Validasi Form dengan PHP

Posted by ilmu-web / Category:

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:
-------------------

if(!$first_name){
?>
Tolong isi nama depan


}
if(!$last_name){
?>
Tolong isi nama belakang


}
if(!eregi($pola_tlp, $tlp)){
echo "Tolong isi Telpon, Harus Angka Ex. 085648173225
";
}
if(!eregi($polaemail, $email_address)){
echo "Tolong isi Email, Ex. scorpio@linux.org
";
}
if(!$username){
?>
Tolong isi username


}
if(!eregi($polapassword, $password)){
echo "Tolong isi Password, Harus Lebih dari 5 Karakter
";
}
if(!$retypepassword){
?>
Tolong isi retype password

}
if( "$password" != "$retypepassword" ){
?>
Passwordnya tidak sama, ulangi lagi ya !


}
?>
-------------------

Setelah kita tunjukkan salah nya dimana, kita sertakan file "form.htm" dengan script:
include "form.htm";

lalu kita akhiri proses:
exit();

0 comments:

Post a Comment