Validasi Form Input Menggunakan PHP


Validasi Form Input Menggunakan PHP


Pada dasarnya validasi data ini terdiri dari 2 bagian, yaitu validasi data dari sisi user dan server, yang akan dibahas ini tentunya validasi data dari sisi server menggunakan script PHP. Untuk teknik atau penulisa kodenya sendiri Anda bisa memilih menggunakan 2 file atau 1 file seperti yang sudah pernah saya jelaskan pada artikel Mengirim Data ke Database Menggunakan Satu File PHP

Baca juga :

Untuk tutorial kali ini saya akan memberikan contoh validasi form input dengan menggunakan 2 file php. File pertama nantinya bertugas mengirim input data dari user, dan file kedua bertugas memvalidasi, memproses dan untuk selanjutnya menyimpan datanya ke database. Sederhananya seperti itu, karena umumnya proses validasi ini juga ujung – ujungnya untuk menyimpan datanya ke database, jadi kita langsung praktekan saja bagiamana contoh validasinya kemudian ketika selesai melakukan eksekusi/perintah query untuk menyimpan data yang telah diperiksa tersebut ke database

Validasi Form Input Menggunakan PHP
  1. Buat sebuah database/tabel seperti berikut ini
    struktur database untuk menyimpan data
  2. Buat sebuah file koneksi php seperti berikut ini

    
    <?php
    $host="localhost";
    $user="root";
    $pass="";
    $db="belajar";
    $koneksi=mysqli_connect($host,$user,$pass);
    if(!$koneksi){
    echo"Gagal Melakukan Koneksi:".mysqli_connect_error();
    exit();
    }
    $pilihdb= mysqli_select_db($koneksi,$db);
    if(!$pilihdb) {
     echo("Gagal memilih Database:".mysqli_connect_error());
    }
    ?>
    
    
  3. Buat sebuah form input untuk menampung data/mengirimkan data dengan method POST
    <html>
    <head>
     <titile>Form Cek Input</titile>
    </head>
    <body>
    <form action="cek_input.php" method="post">
     <input type="text" name="data" id="data" required="" placeholder="Masukan nilai Input">
    <input type="submit" name="kirim" id="kirim" value="kirim">
    </form>
    
    </body>
    </html>
    
  4. Buat sebuah file untuk memvalidasi atau untuk memproses data yang dikirim dari form input untuk kemudian disimpan ke database.
    <?php
    include('koneksi.php');
    ?>
    <?php
    //akses file secara langsung tanpa melalui form tidak diperbolehkan
    if(isset($_POST['kirim'])==""){
     echo "Akses data langsung gagal";
    }
    //Cek data jika data kosong
    if ($_SERVER["REQUEST_METHOD"] == "POST") {
    if(empty($_POST["data"])){
     echo "Data yang dikirimkan kosong";
    }elseif(!preg_match("/^[a-zA-Z]*$/",$_POST["data"])){
    echo "Data tidak sesuai ketentuan, masukan hanya alphabet saja";
    }elseif (strlen($_POST["data"]) > 5) {
    echo "Data <b>$limit</b> Tidak boleh lebih dari 5 karakter";
    }else{
    //ketika kondisi benar terpenuhi
     echo "Input kamu benar<br/>";
     $nama=test_input($_POST["data"]);
     $nama=mysqli_escape_string($koneksi,$nama);
     //bisa jalankan query atau menyimpan variabel untuk dijalankan nanti setelah validasi berikutny
    $perintah=sprintf("INSERT INTO belajar VALUES('null','%s')",$nama);
    $jalankan=mysqli_query($koneksi, $perintah);
    if(!$jalankan){
      echo "Gagal menyimpan data=".mysqli_error();
    }else{
      echo "Berhasil Menyimpan data";
    }
    }
    //jika ingin melanjutkan percabangan gunakan if(empty) tanpa request method disisni seperti contoh pertama
    
    
    }
    function test_input($value) {
      $data = trim($value);
      $data = stripslashes($value);
      $data = htmlspecialchars($value);
      return $data;
    }
    ?>
    
       
    
    
    

Sampai disini kita telah berhasil memvalidasi form input yang dikirim user menggunakan script PHP, untuk percabangannya mungkin akan lebih banyak terutama jika memang ada banyak yang perlu di validasi, seperti misalnya saja memvalidasi nilai input yang dikirim user supaya data yang dikirim tidak boleh sama seperti yang terdapat pada database



#Tambahan :
Kalian juga bisa menggunakan teknik true false didalam percabangan yang ada. Untuk Contoh pemakaiannya bisa kalian lihat pada aplikasi ppdb di root93

#RALAT
Untuk jenis validasi dengan if elseif else seperti pada contoh diatas, sebaiknya ada pengecekan data ulang. Maksudnya, kode percabangan yang saya jelaskan diatas sebenarnya memiliki kesalahan untuk kondisi terkahir pada percabangan. Sehingga akibatnya ketika data terakhir bernilai benar dan data pertama salah dia akan tetap melakukan ekseskusi ke database. Padahal ketika data kedua bernilai salah dan data pertama benar dia tidak mengeksekusi ke database. Seharusnya kalau ada salah satu data pada percabangan yang salah tidak boleh ada eksekusi ke database.

Untuk contoh kode bisa dilihat pada ralat yang terdapat pada halaman Mengirim Data ke Database Menggunakan Satu File PHP

2 Responses to "Validasi Form Input Menggunakan PHP"

  1. kalau untuk limitasi data gmna? jika suatu data sudah ada pada database, maka tidak dapat menginputkan data yang sama lagi untuk kedua kalinya sebelum data sebelumnya dihapus..? terimakasih

    ReplyDelete
    Replies
    1. Baca aja di https://root93.co.id/2019/07/mencegah-input-data-yang-sama-ke-mysql.html

      Delete

Komentar yang Anda kirim akan terlebih dahulu di moderasi oleh Admin

mahjongways menghadirkan evolusi visual digital melalui perpaduan animasi adaptif dan teknologi antarmuka modernintegrasi teknologi real time mengubah cara platform digital mengelola interaksi dan respons penggunaperan random number generator menjaga independensi hasil pada sistem permainan digital modernmengenal cara mahjongways mengembangkan pengalaman interaktif melalui sistem respons simbol dan desain grafis digitalarsitektur microservices menjadi fondasi penting dalam membangun infrastruktur platform digital yang lebih fleksibelmengenal volatilitas dan distribusi hasil dalam karakteristik matematis permainan digital berbasis rngmahjong ways dan evolusi budaya digital melalui perpaduan warisan tradisional dengan teknologi interaktif moderntransformasi infrastruktur digital memperlihatkan peran penting otomatisasi dalam menjaga stabilitas sistemmahjongways memperlihatkan perkembangan desain permainan digital melalui optimalisasi animasi dan transisi visualgame pg soft dan perubahan standar desain visual dalam industri hiburan digitalmengapa game pg soft sering dibahas dalam perkembangan permainan berbasis smartphonedi balik game pg soft bagaimana teknologi animasi membentuk pengalaman penggunagame pg soft dalam sorotan perbedaan antara fitur interaktif dan mekanisme acakketika tampilan game pg soft menjadi bahan diskusi tentang psikologi warnamengulas game pg soft dari sisi perkembangan antarmuka dan kenyamanan navigasigame pg soft dan tantangan membedakan informasi resmi dari klaim komunitasbagaimana game pg soft mengadaptasi elemen budaya dalam konsep visual permainangame pg soft dan pentingnya memahami perbedaan antara rtp serta hasil sesaatfenomena konten video pendek yang membentuk persepsi publik tentang game pg softgame online dan fenomena munculnya pemimpin komunitas dari kalangan pemain biasamengapa sistem reputasi menjadi bagian penting dalam interaksi game onlineketika game online menghadirkan tantangan baru dalam menjaga etika komunikasiperubahan pola kerja sama tim menjadi sorotan dalam perkembangan game onlinegame online dan peran sistem moderasi dalam membangun lingkungan bermain yang sehatbagaimana game online menghubungkan komunitas kecil menjadi jaringan globalfenomena pemain game online yang mengembangkan keterampilan organisasi komunitasgame online dalam kajian perubahan kebiasaan sosial di ruang virtualmengapa transparansi sistem peringkat menjadi perhatian dalam komunitas game onlineketika game online menjadi ruang kreatif bagi pembuat konten dan pemaingame digital dan perubahan cara pengembang membangun dunia virtual yang realistismengapa teknologi haptic feedback menjadi pembahasan menarik dalam game digitalketika game digital menghadirkan karakter yang bereaksi terhadap keputusan pemainperan pencahayaan dinamis dalam membangun suasana permainan game digitalgame digital dan tantangan menjaga identitas seni di tengah perkembangan aibagaimana sistem penyimpanan cloud mengubah pengalaman mengakses game digitalfenomena game digital yang mengangkat cerita rakyat menjadi petualangan interaktifgame digital dalam sorotan perubahan cara studio indie mengembangkan karyamengapa pelestarian game digital lama menjadi topik penting dalam arsip teknologiketika game digital digunakan untuk mengenalkan konsep sains melalui simulasigates of olympus dan kisah mitologi zeus yang diadaptasi menjadi hiburan digitalmengapa sweet bonanza menggunakan tema permen dalam membangun identitas visual gamestarlight princess dan peran karakter fantasi dalam perkembangan desain slot modernfenomena big bass bonanza yang menggabungkan tema memancing dengan mekanisme permainansugar rush 1000 dan cara animasi warna warni membentuk pengalaman visual penggunamengenal the dog house megaways dari sisi desain karakter dan variasi fitur gamegates of hades mengangkat dunia bawah mitologi yunani ke dalam konsep permainan digitaldi balik sweet rush bonanza ada konsep pengali yang menarik dibahas secara matematisfortune of olympus dan perbedaan desain mekanisme permainan bertema dewa yunanimengapa gates of olympus 2500 menarik dikaji dari sisi evolusi seri game digitalkasino online dan tantangan menjaga keamanan akun di tengah ancaman digitaldi balik istilah rtp kasino digital ada perhitungan yang sering disalahartikanketika kasino online menghadapi persoalan transparansi dalam penanganan keluhankasino digital dan fenomena kesalahan persepsi terhadap kemenangan beruntunmemahami peran autentikasi dua faktor dalam melindungi akun kasino onlinekasino online dalam sorotan praktik pengumpulan data dan persetujuan penggunaketika fitur batas pengeluaran menjadi bagian dari perlindungan pengguna kasino digitalkasino digital dan tantangan menjelaskan mekanisme permainan kepada pengguna barumenelusuri hubungan antara kasino online dan perubahan pola konsumsi konten videokasino online dan pentingnya memahami perbedaan antara risiko dan ketidakpastianmahjong ways 2 memiliki pengaturan animasi yang berkaitan dengan kelancaran tampilan pada smartphonepenggunaan refresh rate tinggi pada layar smartphone membawa perubahan dalam pengalaman game mobilemahjong ways menampilkan detail simbol yang dipengaruhi oleh pengaturan resolusi layar perangkatperkembangan teknologi browser membantu game berbasis web menampilkan konten lebih responsifmahjong ways 2 dan pengaruh koneksi internet terhadap kecepatan memuat elemen permainanpenggunaan mode hemat daya pada smartphone dapat memengaruhi kelancaran animasi game digitalmahjong ways menghadirkan tampilan bernuansa asia yang menarik dilihat dari sisi desain antarmukaperkembangan teknologi grafis mobile membuat efek transisi dalam game terlihat semakin haluspengelolaan cache browser menjadi bagian penting dalam menjaga pengalaman mengakses game digitalmahjong ways 2 memperlihatkan perpaduan mekanisme cascade dan penyajian informasi visualkasino online dan tantangan memahami syarat layanan di tengah kemudahan aksesdi balik tampilan kasino digital ada teknologi enkripsi yang melindungi informasiketika kasino online menjadi bagian dari diskusi tentang kecanduan digitalkasino digital dan peran pengawasan transaksi dalam mencegah penyalahgunaanmemahami mengapa klaim pola permainan kasino online perlu diperiksa secara kritiskasino online dalam sorotan perkembangan sistem pembayaran lintas negarafenomena kasino digital dan tantangan menjaga keseimbangan aktivitas sehari hariketika kasino online memanfaatkan desain responsif untuk berbagai ukuran layarkasino digital dan pentingnya memahami perbedaan antara privasi dan anonimitasmenelusuri hubungan antara kasino online dan perkembangan teknologi pencegahan penipuanmahjong ways 2 memiliki detail animasi yang bisa terlihat berbeda pada setiap jenis layar smartphonepenggunaan gpu pada smartphone memiliki peran penting dalam menampilkan efek visual game digitalmahjong ways menghadirkan susunan simbol yang menarik dipahami dari sisi desain antarmukaperkembangan teknologi layar oled membawa perubahan pada tampilan warna dalam game mobilemahjong ways 2 dan cara sistem permainan menampilkan perubahan simbol secara berurutanpengaturan kualitas grafis game mobile membantu menyesuaikan tampilan dengan kemampuan perangkatmahjong ways memadukan ornamen tradisional dengan elemen digital yang membentuk identitas visualperkembangan teknologi game berbasis browser membuka pilihan baru dalam hiburan digitalmahjong ways 2 menampilkan hubungan antara efek suara dan perubahan animasi selama permainanpenggunaan teknologi kompresi aset membantu game mobile mengurangi beban penyimpanan perangkatkasino online dan peran teknologi browser dalam menjaga kelancaran akses digitaldi balik sistem kasino digital ada proses sinkronisasi data yang jarang dibahasketika kasino online menghadapi tantangan keamanan pada perangkat selulermemahami pengaruh latensi jaringan terhadap respons layanan kasino digitalkasino digital dan fenomena penggunaan informasi pribadi dalam ekosistem internetmenelusuri cara sistem kasino online menangani gangguan koneksi mendadakkasino online dan pentingnya mengenali risiko ekstensi browser yang tidak terpercayaketika pembaruan sistem mengubah tampilan dan navigasi kasino digitalkasino digital dalam pembahasan tentang keamanan penyimpanan data penggunamemahami hubungan antara kasino online dan perkembangan teknologi deteksi aktivitas tidak wajar