Posted By: Anggi
Validasi Form dengan PHP
25-03-2007 | 16:48:41 | Halaman Ini dibaca 17897 kali
Anda mau membuat peraturan untuk form-form di website anda?? Seperti:
- Nomor Telephone Harus memakai awalan "0" dan minimum 5 angka - Email Harus ada "@" dan .com / .net atau apa saja - Password harus sama dengan ReTypePassword - Atau jika Form ada yang kosong salah satu maka batalkan proses
Untuk memvalidasi lebih baik gunakan PHP dari pada javascript
Oke ini Penjelasan script nya: --------------- include 'db.php';
$first_name = $_POST['first_name']; $last_name = $_POST['last_name']; $tlp = $_POST['tlp']; $email_address = $_POST['email_address']; $username = $_POST['username']; $password = $_POST['password']; $retypepassword = $_POST['retypepassword']; $iphidden = $_POST['iphidden']; $nim = $_POST['nim']; ----------------- Script "include 'db.php';" di atas untuk connect dg database, sedangkan script "$first_name = $_POST['first_name'];" dan lain-lain itu gunanya untuk mengambil data dari form sebelumnya saya kira teman2 sudah paham masalah ini...
----------------- $polaemail = "^.+@.+\..+$"; $pola_tlp = "^[0-9]+$"; $polapassword = "^.{5,}$"; ----------------- Script di atas berfungsi untuk menentukan pola dari string yang kita tentukan, lihat Tabel di bawah ini:
| Pola |
Kode |
| Harus di awal kata |
^ |
| Huruf |
A-Za-z |
| Angka |
0-9 |
| Huruf atau angka |
[A-Za-z0-9] |
| Semua jenis karakter |
. |
| Berjumlah satu atau lebih |
+ atau {1,} |
| Berjumlah nol atau lebih |
* atau {0,} |
| Berjumlah tiga sampai sepuluh |
{3,10} |
| Diikuti dengan @ |
@ |
| Tanda titik |
\. |
| Harus berada di akhir kalimat |
$ | Jadi jika: $polaemail = "^.+@.+\..+$"; Deskripsi dari pola email: ^ (harus ada karakter di depan) . (semua jedis karakter) + (Lebih dari satu) @(tanda @) . (semua jedis karakter) + (Lebih dari satu) \. (di ikuti tanda titik) . (semua jedis karakter) + (Lebih dari satu) $ (Harus ada di akhir kalimat)
Jika anda mau email harus .com / .net / .org Polanya seperti ini: ^.+@.+\.((com)|(net)|(org))$
------------------- if((!$first_name) || (!$last_name) || (!eregi($pola_tlp, $tlp)) || (!eregi($polaemail, $email_address)) || (!$username) || (!eregi($polapassword, $password)) || (!$retypepassword) || ($password != $retypepassword)) ------------------- Pernyataan "if", Jika Tanda "!" berarti tidak, script "!$first_name" berarti string "$first_name" tidak berisi atau kosong Tanda "||" itu berarti "atau". Script "!eregi($pola_tlp, $tlp)" "eregi" adalah fungsi untuk membandingkan, berarti jika $pola_tlp tidak sama dengan $tlp Tanda "!=" berarti tidak sama
Script di atas berfungsi untuk memeriksa semua string apakah kosong atau polanya tidak sama. Jika ada salah satu string yang bermasalah kita langsung tampilkan pernyataan: "Tolong Isi Formulir Ini Dengan Benar! "
Setelah itu kita tunjukkan bagian mana yang salah, dengan script: ------------------- <?php if(!$first_name){ ?> Tolong isi nama depan <br />
<?php } if(!$last_name){ ?> Tolong isi nama belakang <br />
<?php } if(!eregi($pola_tlp, $tlp)){ echo "Tolong isi Telpon, Harus Angka Ex. 085648173225<br />"; } if(!eregi($polaemail, $email_address)){ echo "Tolong isi Email, Ex. scorpio@linux.org<br />"; } if(!$username){ ?> Tolong isi username<br />
<?php } if(!eregi($polapassword, $password)){ echo "Tolong isi Password, Harus Lebih dari 5 Karakter<br />"; } if(!$retypepassword){ ?> Tolong isi retype password
<?php } if( "$password" != "$retypepassword" ){ ?> Passwordnya tidak sama, ulangi lagi ya !
<?php } ?> -------------------
Setelah kita tunjukkan salah nya dimana, kita sertakan file "form.htm" dengan script: include "form.htm";
lalu kita akhiri proses: exit();
Article Last Update on 23 Februari 2008 Link Updated Download Ebooknya disini -> Download Semua Ebook Tutorial PHP ilmuwebsite
|