Kita akan coba
melanjutkan membuat form validasi dengan menambahkan fields bersyarat, misalnya
nama dna email yang harus diisi, apabila tidak diisi maka akan menampilkan sebuah
pesan kesalahan..
Nama-nama fields nya
masih sama dengan Form validasi yang kita buat pertama.
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
|
Dalam materi sebelumnya (membuat
form validasi), semua input formnya adalah optional.
Dalam kode berikut saya telah menambahkan beberapa variabel baru: $ nameErr, $ emailErr, $ genderErr, dan $ websiteErr. Variabel kesalahan ini akan mengirimkan pesan kesalahan untuk input yang diperlukan. Saya juga telah menambahkan jika lain pernyataan untuk setiap variabel $ _POST. Ini akan memeriksa apakah variabel $ _POST kosong dengan fungsi PHP empty ()). Jika kosong, pesan kesalahan disimpan dalam variabel kesalahan yang berbeda, dan jika tidak kosong, ia akan mengirimkan data input pengguna melalui fungsi test_input ()
Tampilan Pesan Kesalahan
Setelah nanti form input bersyarat kita buat kita juga membuat form yang akan menampilkan pesan kesalahan dalam bentuk kode HTML, dengan sedikit menambahkan script setelah masing-masing input yang diperlukan, yang menghasilkan pesan kesalahan yang benar, jika diperlukan (yaitu jika pengguna mencoba untuk mengirimkan formulir tanpa mengisi formulir yang diperlukan).
Setelah nanti form input bersyarat kita buat kita juga membuat form yang akan menampilkan pesan kesalahan dalam bentuk kode HTML, dengan sedikit menambahkan script setelah masing-masing input yang diperlukan, yang menghasilkan pesan kesalahan yang benar, jika diperlukan (yaitu jika pengguna mencoba untuk mengirimkan formulir tanpa mengisi formulir yang diperlukan).
Selengkapnya scriptnya seperti berikut ini :
<!DOCTYPE HTML>
<html>
<head>
<style>
.error {color: #FF0000;}
</style>
</head>
<body>
<?php
// mendefinisikan variabel dan menetapkan nilai kosong
$nameErr = $emailErr = $genderErr = $websiteErr = "";
$nama = $email = $gender = $comment = $website = "";
if ($_SERVER["REQUEST_METHOD"] == "POST") {
if (empty($_POST["nama"])) {
$nameErr = "Nama harus diisi";
} else {
$name = test_input($_POST["nama"]);
}
if (empty($_POST["email"])) {
$emailErr = "Email harus diisi";
} else {
$email = test_input($_POST["email"]);
}
if (empty($_POST["website"])) {
$website = "";
} else {
$website = test_input($_POST["website"]);
}
if (empty($_POST["comment"])) {
$comment = "";
} else {
$comment = test_input($_POST["comment"]);
}
if (empty($_POST["gender"])) {
$genderErr = "Gender is required";
} else {
$gender = test_input($_POST["gender"]);
}
}
function test_input($data) {
$data = trim($data);
$data = stripslashes($data);
$data = htmlspecialchars($data);
return $data;
}
?>
<h2>Contoh Form Validasi bersyarat</h2>
<p><span class="error">* Field harus diisi.</span></p>
<form method="post" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>">
Nama: <input type="text" name="nama">
<span class="error">* <?php echo $nameErr;?></span>
<br><br>
E-mail: <input type="text" name="email">
<span class="error">* <?php echo $emailErr;?></span>
<br><br>
Website: <input type="text" name="website">
<span class="error"><?php echo $websiteErr;?></span>
<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
<span class="error">* <?php echo $genderErr;?></span>
<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>
<html>
<head>
<style>
.error {color: #FF0000;}
</style>
</head>
<body>
<?php
// mendefinisikan variabel dan menetapkan nilai kosong
$nameErr = $emailErr = $genderErr = $websiteErr = "";
$nama = $email = $gender = $comment = $website = "";
if ($_SERVER["REQUEST_METHOD"] == "POST") {
if (empty($_POST["nama"])) {
$nameErr = "Nama harus diisi";
} else {
$name = test_input($_POST["nama"]);
}
if (empty($_POST["email"])) {
$emailErr = "Email harus diisi";
} else {
$email = test_input($_POST["email"]);
}
if (empty($_POST["website"])) {
$website = "";
} else {
$website = test_input($_POST["website"]);
}
if (empty($_POST["comment"])) {
$comment = "";
} else {
$comment = test_input($_POST["comment"]);
}
if (empty($_POST["gender"])) {
$genderErr = "Gender is required";
} else {
$gender = test_input($_POST["gender"]);
}
}
function test_input($data) {
$data = trim($data);
$data = stripslashes($data);
$data = htmlspecialchars($data);
return $data;
}
?>
<h2>Contoh Form Validasi bersyarat</h2>
<p><span class="error">* Field harus diisi.</span></p>
<form method="post" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>">
Nama: <input type="text" name="nama">
<span class="error">* <?php echo $nameErr;?></span>
<br><br>
E-mail: <input type="text" name="email">
<span class="error">* <?php echo $emailErr;?></span>
<br><br>
Website: <input type="text" name="website">
<span class="error"><?php echo $websiteErr;?></span>
<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
<span class="error">* <?php echo $genderErr;?></span>
<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