Para pengunjung blog.. mari kita lanjut belajar bersama kita dengan membuat form validasi.
Kali ini
saya akan coba menjelaskan tentang Validasi Form yang akan kita buat.
agak sedikit panjang tapi ga papa… yang penting jalan.
agak sedikit panjang tapi ga papa… yang penting jalan.
Baik akan
kita coba buat Form dengan struktur seperti yang berikut ini :
Field
|
Validasi
|
Nama
|
Wajib + berisi karakter dan spasi
|
Email
|
Wajib. + berisi email
address (dengan @ dan . (titik))
|
Website
|
Optional. Jika ada diisi dengan URL yang benar
|
Comment
|
Optional.
Multi-line input field (textarea)
|
Gender
|
Wajib. Harus dipilih salah satu
|
Pertama kita coba buat kode HTML nya dulu,
Text Fields
Nama, email, dan bidang situs adalah
elemen input teks, dan kolom komentar adalah textarea.
Kode HTML nya terlihat seperti ini:
Name: <input type="text" name="nama">
E-mail: <input type="text" name="email">
Website: <input type="text" name="website">
Comment: <textarea name="comment" rows="5" cols="40"></textarea>
E-mail: <input type="text" name="email">
Website: <input type="text" name="website">
Comment: <textarea name="comment" rows="5" cols="40"></textarea>
Selanjutnya
mari kita tambahkan
Radio Buttons
Bagian script gender menggunakan radio Buttons dank ode HTML nya adalah seperti dibawah :
Gender:
<input type="radio" name="gender" value="Perempuan">Perempuan
<input type="radio" name="gender" value="laki">Laki-laki
<input type="radio" name="gender" value="Perempuan">Perempuan
<input type="radio" name="gender" value="laki">Laki-laki
Form Element
HTML code untuk form nya tampak seperti dibawah ini :<form method="post" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>">
Data yang ada dalam formulir dikirim dengan metode = "post".
$ _SERVER ["PHP_SELF"] adalah variabel global yang mengembalikan nama file dari script saat ini dan kemudian mengeksekusi.
Jadi, $ _SERVER ["PHP_SELF"] mengirimkan data formulir ke halaman itu sendiri, tidak dengan melompat ke halaman yang berbeda. Dengan cara ini, pengguna akan mendapatkan pesan error pada halaman yang sama seperti formulir.
Catatan Apa fungsi htmlspecialchars() ?
Fungsi htmlspecialchars()
adalah mengkonversi karakter khusus ke kode HTML. Hal
ini penting untuk keamanan dan mencegah tukang usil diinternet heheh agar
tidak merubah script kita dengan mengubah kode HTML atau kode Javascript (atau bahasa
kerennya serangan Scripting
Cross-site).
Vaiabel $
_SERVER ["PHP_SELF"] dapat digunakan oleh hacker!Jika PHP_SELF digunakan dalam halaman anda maka pengakses form dapat dimemasukkan sebuah script dengan cara entry garis miring (/) dan kemudian menambahkan beberapa perintah Cross Site Scripting (XSS) untuk dieksekusi.
Cross-site scripting (XSS) adalah jenis celah keamanan komputer biasanya ditemukan dalam aplikasi Web. XSS memungkinkan penyerang untuk menyuntikkan script dari sisi klien ke halaman Web dan ini sangat berbahaya untuk keamanan website anda.
Baiklah kita lanjutkan dan asumsikan kita memiliki script bernama "test_form.php":
boleh dicopy paste script di bawah ini dan jangan lupa dicoba di webserver yang sudah kita install di pc kita ya :
<!DOCTYPE HTML>
<html>
<head>
</head>
<body>
<?php
// mendefinisikan variabel dan menetapkan nilai kosong
<html>
<head>
</head>
<body>
<?php
// mendefinisikan variabel dan menetapkan nilai kosong
$name = $email = $gender = $comment
= $website = "";
if ($_SERVER["REQUEST_METHOD"] == "POST") {
$nama = test_input($_POST["nama"]);
$email = test_input($_POST["email"]);
$website = test_input($_POST["website"]);
$comment = test_input($_POST["comment"]);
$gender = test_input($_POST["gender"]);
}
function test_input($data) {
$data = trim($data);
$data = stripslashes($data);
$data = htmlspecialchars($data);
return $data;
}
?>
<h2>contoh PHP Form Validasi </h2>
<form method="post" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>">
Nama: <input type="text" name="nama">
<br><br>
E-mail: <input type="text" name="email">
<br><br>
Website: <input type="text" name="website">
<br><br>
Comment: <textarea name="comment" rows="5" cols="40"></textarea>
<br><br>
Gender:
<input type="radio" name="gender" value="perempuan">Perempuan
<input type="radio" name="gender" value="laki">Laki-laki
<br><br>
<input type="submit" name="submit" value="Submit">
</form>
<?php
echo "<h2>Komentar Anda :</h2>";
echo $nama;
echo "<br>";
echo $email;
echo "<br>";
echo $website;
echo "<br>";
echo $comment;
echo "<br>";
echo $gender;
?>
</body>
</html>
if ($_SERVER["REQUEST_METHOD"] == "POST") {
$nama = test_input($_POST["nama"]);
$email = test_input($_POST["email"]);
$website = test_input($_POST["website"]);
$comment = test_input($_POST["comment"]);
$gender = test_input($_POST["gender"]);
}
function test_input($data) {
$data = trim($data);
$data = stripslashes($data);
$data = htmlspecialchars($data);
return $data;
}
?>
<h2>contoh PHP Form Validasi </h2>
<form method="post" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>">
Nama: <input type="text" name="nama">
<br><br>
E-mail: <input type="text" name="email">
<br><br>
Website: <input type="text" name="website">
<br><br>
Comment: <textarea name="comment" rows="5" cols="40"></textarea>
<br><br>
Gender:
<input type="radio" name="gender" value="perempuan">Perempuan
<input type="radio" name="gender" value="laki">Laki-laki
<br><br>
<input type="submit" name="submit" value="Submit">
</form>
<?php
echo "<h2>Komentar Anda :</h2>";
echo $nama;
echo "<br>";
echo $email;
echo "<br>";
echo $website;
echo "<br>";
echo $comment;
echo "<br>";
echo $gender;
?>
</body>
</html>
No comments:
Post a Comment