PHP - Contoh Validasi
Bidang yang harus diisi akan memeriksa apakah bidang tersebut diisi atau tidak dengan cara yang benar. Sebagian besar kasus kami akan menggunakan file* simbol untuk bidang yang harus diisi.
Apa itu Validasi?
Validasi berarti memeriksa masukan yang dikirimkan oleh pengguna. Ada dua jenis validasi yang tersedia di PHP. Mereka adalah sebagai berikut -
Client-Side Validation - Validasi dilakukan pada browser web mesin klien.
Server Side Validation - Setelah data terkirim, data dikirim ke server dan dilakukan pengecekan validasi di mesin server.
Beberapa aturan Validasi untuk bidang
Bidang | Aturan Validasi |
---|---|
Nama | Harus diperlukan huruf dan spasi |
Surel | Harus dibutuhkan @ dan . |
Situs web | Harus diperlukan URL yang valid |
Radio | Harus dapat dipilih setidaknya sekali |
Kotak Centang | Harus dapat diperiksa setidaknya sekali |
Menu drop down | Harus dapat dipilih setidaknya sekali |
URL yang valid
Kode di bawah ini menunjukkan validasi URL
$website = input($_POST["site"]);
if (!preg_match("/\b(?:(?:https?|ftp):\/\/|www\.)[-a-z0-9+&@#\/%?=~_|!:,.;]*[-a-z0-9+&@#\/%=~_|]/i",$website)) {
$websiteErr = "Invalid URL";
}
Sintaks di atas akan memverifikasi apakah URL yang diberikan valid atau tidak. Ini harus mengizinkan beberapa kata kunci seperti https, ftp, www, az, 0-9, .. dll ..
Email yang Valid
Kode di bawah ini menunjukkan validasi alamat Email
$email = input($_POST["email"]);
if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
$emailErr = "Invalid format and please re-enter valid email";
}
Sintaks di atas akan memverifikasi apakah alamat Email yang diberikan berbentuk baik atau tidak. Jika tidak, itu akan menampilkan pesan kesalahan.
Contoh
Contoh di bawah menunjukkan formulir dengan validasi bidang yang diperlukan
<html>
<head>
<style>
.error {color: #FF0000;}
</style>
</head>
<body>
<?php
// define variables and set to empty values
$nameErr = $emailErr = $genderErr = $websiteErr = "";
$name = $email = $gender = $comment = $website = "";
if ($_SERVER["REQUEST_METHOD"] == "POST") {
if (empty($_POST["name"])) {
$nameErr = "Name is required";
}else {
$name = test_input($_POST["name"]);
}
if (empty($_POST["email"])) {
$emailErr = "Email is required";
}else {
$email = test_input($_POST["email"]);
// check if e-mail address is well-formed
if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
$emailErr = "Invalid email format";
}
}
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>Absolute classes registration</h2>
<p><span class = "error">* required field.</span></p>
<form method = "post" action = "<?php
echo htmlspecialchars($_SERVER["PHP_SELF"]);?>">
<table>
<tr>
<td>Name:</td>
<td><input type = "text" name = "name">
<span class = "error">* <?php echo $nameErr;?></span>
</td>
</tr>
<tr>
<td>E-mail: </td>
<td><input type = "text" name = "email">
<span class = "error">* <?php echo $emailErr;?></span>
</td>
</tr>
<tr>
<td>Time:</td>
<td> <input type = "text" name = "website">
<span class = "error"><?php echo $websiteErr;?></span>
</td>
</tr>
<tr>
<td>Classes:</td>
<td> <textarea name = "comment" rows = "5" cols = "40"></textarea></td>
</tr>
<tr>
<td>Gender:</td>
<td>
<input type = "radio" name = "gender" value = "female">Female
<input type = "radio" name = "gender" value = "male">Male
<span class = "error">* <?php echo $genderErr;?></span>
</td>
</tr>
<td>
<input type = "submit" name = "submit" value = "Submit">
</td>
</table>
</form>
<?php
echo "<h2>Your given values are as:</h2>";
echo $name;
echo "<br>";
echo $email;
echo "<br>";
echo $website;
echo "<br>";
echo $comment;
echo "<br>";
echo $gender;
?>
</body>
</html>
Ini akan menghasilkan hasil sebagai berikut -