PHP Validasi Form - Validasi Email dan URL
- Halaman Sebelumnya Formulir PHP Wajib Diisi
- Halaman Berikutnya Formulir PHP Selesai
Bagian ini menunjukkan bagaimana cara memvalidasi nama, email, dan URL.
PHP - Validasi Nama
Metode yang ditunjukkan di kode berikut ini memeriksa apakah field name mengandung huruf dan spasi. Jika field name tidak berlaku, lakukan menyimpan pesan kesalahan:
$name = test_input($_POST["name"]); if (!preg_match("/^[a-zA-Z ]*$/",$name)) { $nameErr = "Hanya huruf dan spasi diperbolehkan!"; }
Keterangan:Fungsi preg_match() mencari pola string, jika pola ada maka kembalikan true, jika tidak ada maka kembalikan false.
PHP - Validasi Email
Metode yang ditunjukkan di kode berikut ini memeriksa sintaks alamat email apakah berlaku. Jika sintaks alamat email tidak berlaku, lakukan menyimpan pesan kesalahan:
$email = test_input($_POST["email"]); if (!preg_match("/([\w\-]+\@[\w\-]+\.[\w\-]+)/",$email)) { $emailErr = "Format email tidak berlaku!"; }
PHP - Validasi URL
Metode yang ditunjukkan di kode berikut ini memeriksa sintaks alamat URL apakah berlaku (ekspresi reguler ini juga mengizinkan garis miring di URL). Jika sintaks alamat URL tidak berlaku, lakukan menyimpan pesan kesalahan:
$website = test_input($_POST["website"]); if (!preg_match("/\b(?:(?:https?|ftp):\/\/|www\.)[-a-z0-9+&@#\/%?=~_|!:,.;]*[-a-z0-9+&@#\/%", =~_|]/i,$website)) { $websiteErr = "URL tidak berlaku"; }
PHP - Validasi Nama, Email, dan URL
Sekarang, skrip ini seperti ini:
Contoh
<?php // Definisi variabel dan diatur nilai kosong $nameErr = $emailErr = $genderErr = $websiteErr = ""; $name = $email = $gender = $comment = $website = ""; if ($_SERVER["REQUEST_METHOD"] == "POST") { if (empty($_POST["name"])) { $nameErr = "Nama diperlukan"; } $name = test_input($_POST["name"]); // Periksa apakah nama mengandung huruf dan spasi if (!preg_match("/^[a-zA-Z ]*$/",$name)) { $nameErr = "Hanya huruf dan spasi diperbolehkan"; } } if (empty($_POST["email"])) { $emailErr = "Email diperlukan"; } $email = test_input($_POST["email"]); // Periksa sintaks alamat email apakah berlaku if (!preg_match("/([\w\-]+\@[\w\-]+\.[\w\-]+)/",$email)) { $emailErr = "Format email tidak valid"; } } if (empty($_POST["website"])) { $website = ""; } $website = test_input($_POST["website"]); // Memeriksa apakah alamat URL bahasa yang berlaku (ekspresi reguler ini juga mengijinkan garis bawah di URL) if (!preg_match("/\b(?:(?:https?|ftp):\/\/|www\.)[-a-z0-9+&@#\/%?=~_|!:,.;]*[-a-z0-9+&@#\/%", =~_|]/i,$website)) { $websiteErr = "URL Tidak Valid"; } } if (empty($_POST["comment"])) { $comment = ""; } $comment = test_input($_POST["comment"]); } if (empty($_POST["gender"])) { $genderErr = "Gender diperlukan"; } $gender = test_input($_POST["gender"]); } } ?>
Berikut ini penjelasan tentang cara mencegah formulir dihapus semua bidang input setelah pengguna mengirim formulir.
- Halaman Sebelumnya Formulir PHP Wajib Diisi
- Halaman Berikutnya Formulir PHP Selesai