Dokumen Ary

Belajar adalah suatu investasi yang tak ternilai harganya

Validasi Form Input Dengan PHP

Dilihat dari search engine terms yang di tangkap oleh blok ini, rata-rata pengunjung mencari article seputar validasi form, sehingga article saya tentang  javascript untuk validasi form input adalah article yang paling sering di lihat, bermula dari hal tersebut kemudian saya berkeinginan menulis article lagi seputar validasi.

Pada article saya yang sebelumnya, semua validasi form di atur oleh bantuan javascript, kalo menurut saya sih hal tersebut masih rawan dalam artian jika pengaturan javascript pada browser di disable maka validasi form yang sudah kita buat menggunakan javascript tidak akan jalan, artinya user akan bisa menginputkan apa saja ke dalam form.

Untuk menanggulangi hal tersebut saya sangat menyarankan temen-temen semua menggunakan php saja untuk membuat validasi suatu form inputan, karena apa? validasi dengan php dijalankan oleh server dengan demikian enable atau disable pengaturan javascript pada browser tidak akan pengaruh.

Sebelum masuk ke pembahasan, biasanya kita akan lebih tertarik mempelajari sesuatu jika kita bisa melihat hasil yang akan di buat, untuk itu temen-temen bisa lihat hasilnya di SINI.

Untuk membuat validasi dengan php kita cukup menggunakan fungsi-fungsi bawaan php, fungsi-fungsi yang sering di gunakan untuk memvalidasi bisanya adalah :

  1. Fungsi empty(), fungsi ini digunakan untuk menggecek apakan inputan kosong atau tidak, misalkan saja ada inputan berupa nama pada suatu form jadi untuk mengeceknya cukup dengan kondisi seperti berikut :
    if (empty($_POST['nama'])){
       //keluarkan pesan error
    }
    else{
       //jalankan
    }
  2. Fungsi strlen(), fungsi ini digunakan untuk mengetahui panjang karakter, contoh penggunaanya misalkan inputan nama diharuskan lebih dari 3 karakter :
    if ((strlen($_POST['nama'])) < 3){
       //keluarkan pesan error
    }
    else{
       //jalankan
    }
  3. Fungsi is_numeric(), fungsi ini digunakan untuk mengetahui parameter yang di berikan merupakan angka atau bukan, contoh penggunaanya misalkan inputan nama tidak boleh menggunakan angka :
    if (is_numeric($_POST['nama'])){
       //keluarkan pesan error
    }
    else{
       //jalankan
    }

Selain menggunakan fungsi bawaan php kita juga bisa menggunakan regex atau regular expression, contoh penggunaannya misalkan sebagai berikut :

  1. Untuk mengecek penulisan Email :
    if (!eregi("^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})$", $_POST['email'])){
       //keluarkan pesan error
    }
    else{
       //jalankan
    }
  2. Pada suatu form registrasi, username harus memiliki panjang minimal 5 karakter tanpa sepasi, – , dan _  :
    if (!eregi("^[a-zA-Z0-9]{5,100}$", $_POST['username'])){
       //keluarkan pesan error
    }
    else{
      //jalankan
    }

Selain memberikan kondisi inputan harus seperti apa, kita juga harus memberikan filter dari setiap inputan yang masuk, klo di cms lokomedia sudah di berikan sebuah fungsi namanya antiinjection, ya kenapa g kita pake aja fungsi tersebut, cara menggunakannya sangat sederhana, misalkan ada inputan nama maka contoh penggunaanya seperti berikut :

function antiinjection($data){
  $filter_sql = stripslashes(strip_tags(htmlspecialchars($data,ENT_QUOTES)));
  return $filter_sql;
}

$nama = antiinjection($_POST['nama']);

dengan cara tersebut makan inputan nama akan di filter dulu oleh fungsi antiinjection.

Pada contoh hasil yang saya berikan di atas, contoh tersebut sudah mencakup tentang manajemen notifikasi jika inputan tidak sesuai dengan yang kita inginkan, namun pembahasan tentang notifikasi dengan session tersebut tidak saya bahas pada article kali ini, temen-temen bisa meneruskannya pada tulisan saya tentang Notifiakasi Form Error dengan Php

Saya selalu berharap, apa yang telah saya tulis bisa memberikan ilmu pengetahuan untuk temen-temen semua. Jangan lupa like dokumenary on facebook ya… :D, setiap like berarti temen-temen telah memberikan semangat untuk saya dalam menulis article-article yang lebih baru.

Sekian dan Terima kasih… 🙂

18 responses to “Validasi Form Input Dengan PHP

  1. Pingback: Notifikasi Form Error dengan Session PHP « Dokumen Ary

  2. bincar December 19, 2012 at 5:11 am

    master gak ad ya link downlaodnya………

  3. Willy January 2, 2013 at 7:02 am

    Kalo pake contoh tsb, berarti setiap ada satu field yg salah/ tidak sesuai aturan harus mengisi ulang field2 lain yg sudah betul ?

  4. Andries January 29, 2013 at 4:46 am

    minta dong code aksi.php nya….
    thx

  5. Chasansan February 12, 2013 at 6:02 am

    terima kasih sangat jelas.

  6. mostmultimedia February 18, 2013 at 3:52 pm

    salam kenal master, saya sudah membuat form dan sebuah tombol submit, nah untuk menuliskan code yang master postingkan Fungsi empty(), fungsi ini digunakan untuk menggecek apakah inputan kosong atau tidak, itu disebelah mana coding form yang sudah saya buat, karena kalau saya tuliskan coding yang master postingkan itu tidak aktif (fontnya berwarna hitam), saya menggunakan Dreamweaver CS3, mohon bantuannya master….maklum newbie

    if (empty($_POST[‘nama’])){
    //keluarkan pesan error
    }
    else{
    //jalankan
    }

    • Almazari February 18, 2013 at 5:42 pm

      form kan ada aksi nya tu seperti ini , <form method=’post’ action=’aksi.php’> saya contohkan di situ nama aksi dari formnya adalah file aksi.php, jadi validasi di masukkan di file aksi.php. misalnya lagi dalam form tersebut ada sebuah isian nama seperti ini <input type=’text’ name=’nama’> jadi validasinya seperti berikut :

      if (empty($_POST[‘nama’])){
      //keluarkan pesan error
      }
      else{
      //jalankan
      }

  7. Pak 'Jo' Veri July 3, 2013 at 7:48 pm

    saya lagi bikin sistem informasi pengelolaan tugas akhir, dimana untuk login ke sistem ini cuma dengan mengetik NIP dosen dan password (utk dosen) sedangkan mahasiswa menggunakan NIM dan password. Yang jadi pertanyaan saya bisakah kita membuat satu ID dimana kita memberikan level yang berbeda-beda pada ID tersebut, misalnya dosen tersebut ada yang jadi penasehat akademik, ka prodi, pembimbing dan penguji. Kasus ini dengan menghilangkan kolom level pada bagian login… TQ

  8. rojhieb October 31, 2013 at 9:12 am

    script yang untuk dikirim ke email gimana mas bro

  9. anis January 7, 2014 at 2:22 pm

    Master mau tanya donk..
    Kalo mau ngasih validasi hasil post array gmn ya?
    Yang q kirim array nya itu kode barangnya..setelah cheklist bbrapa kode barang yang d pesan klik tombol save.nah di form selanjutnya ada input jumlah qty barang2 yg mau d pesan itu brapa aja,barang yg muncul sesuai kode barang yg udah di checklist td.
    Tapi punya q validasinya cuma muncul d barang yg urutan pertama aja yg paling atas,barang pilihan yg ke 2 3 4 dst itu d textbox jumlah qty brgnya g bisa muncul validasinya.jadi kalo barang prtama sdah d isi jml qty brgnya,tpi brang ke 2 3 msih kosong,pas d save ttp bisa ke save.kn maunya q g bisa d save..gmn donk?

    Mohon bantuannya donk…
    Please….
    😦

    • Almazari January 13, 2014 at 12:19 pm

      uumm gitu… mungkin begini :

      misalkan $_POST[‘kode_barang’] = array(‘kd_a’, ‘kd_b’, ‘kd_c’, ‘kd_d’);

      Berarti untuk memunculkan QTY perbarang adalah :

      foreach($_POST[‘kode_barang’] as $kode){
      echo "<input type=’text’ name=’qty[$kode]’>";
      }

      //aksi untuk validasinya
      if(isset($_POST)){
      //identifikasi jika ada post data

      $arr_error = array();
      foreach($_POST[‘qty’] as $kode => $isi_post){

      //cek apakah ada jumlah qty yang diinputkan per kode barang
      if(empty($isi_post)){
      $arr_error[] = "QTY Kode barang ".$kode." belum diisi";
      }
      }

      //tampilkan pesan errornya
      if(count($arr_error) &gt; 0){
      echo "<ul>";
      foreach($arr_error as $error){
      echo "<li>$error</li>";
      }
      echo "</ul>";
      }
      }

  10. Tian July 1, 2014 at 7:17 am

    master mau tanya,kalo ada form nama trus gak boleh memasukkan huruf b gimana kodingnya,trus biasanya kan kalo buat form daftar,kalo alamt/no hp dikosongi kan biasnya bisa,kalo di buat eror,harus diisi lengkap gimana kodingnya

  11. wijakso subroto December 8, 2014 at 10:15 pm

    master numpang tanya..cara validasi form kalo misalkan inputan nama di sisipkan angka?
    misalnya :
    nama :andi123
    nah mau nya ane tuh error karena nama harus huruf semua .. tolong banget… makasih sebelunya.. 🙂

  12. RubertAbard September 7, 2018 at 12:19 pm

    Работа в интернете

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: