PHP là gì? Đặc điểm của ngôn ngữ lập trình PHP
1. PHP là gì? Đặc điểm của ngôn ngữ lập trình PHP 1.1. PHP là gì?...
Kết quả sẽ mở trong tab mới, giới hạn trong website này.
Truy cập nhanh
Tìm kiếm gần đây
Trong bài này, chúng ta sẽ tìm hiểu về validation email và url trong PHP. Để học tốt bài này, các bạn cần đọc lại bài Cài đặt môi trường lập trình Web PHP với XAMPP để biết cách chạy ứng dụng web PHP với XAMPP. 1. Kiểm tra (validation) name với PHP Chúng ta […]
Trong bài này, chúng ta sẽ tìm hiểu về validation email và url trong PHP. Để học tốt bài này, các bạn cần đọc lại bài Cài đặt môi trường lập trình Web PHP với XAMPP để biết cách chạy ứng dụng web PHP với XAMPP.
Chúng ta có thể kiểm tra xem dữ liệu nhập vào (ví dụ dữ liệu name) có chỉ chứa các chữ cái, dấu gạch ngang, dấu nháy đơn và khoảng trắng hay không. Nếu dữ liệu nhập vào không hợp lệ thì xuất ra một thông báo lỗi.
$name = test_input($_POST["name"]);
if (!preg_match("/^[a-zA-Z-' ]*$/",$name)) {
$nameErr = "Only letters and white space allowed";
}
PHP hỗ trợ hàm preg_match() để kiểm tra một chuỗi (string) có thỏa mãn một mẫu (pattern) hay không.
PHP hỗ trợ hàm filter_var() để kiểm tra xem một chuỗi nhập vào có phải là một địa chỉ email hay không.
$email = test_input($_POST["email"]);
if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
$emailErr = "Invalid email format";
}
PHP hỗ trợ hàm preg_match() để kiểm tra một chuỗi (string) có thỏa mãn một mẫu (pattern) của url hay không.
$website = test_input($_POST["website"]);
if (!preg_match("/\b(?:(?:https?|ftp):\/\/|www\.)[-a-z0-9+&@#\/%?=~_|!:,.;]*[-a-z0-9+&@#\/%=~_|]/i",$website)) {
$websiteErr = "Invalid URL";
}
Bên dưới là một html form có kiểm tra name, email, url với PHP.
<!DOCTYPE HTML>
<html>
<head>
<title>Please, give some comments for gochocit.com!</title>
<style>
.error {color: #FF0000;}
</style>
</head>
<body>
<?php
$nameErr = $emailErr = $commentErr = "";
$name = $email = $website = $comment = "";
if ($_SERVER["REQUEST_METHOD"] == "POST") {
if (empty($_POST["name"])) {
$nameErr = "Name is required";
} else {
$name = test_input($_POST["name"]);
// check if name only contains letters and whitespace
if (!preg_match("/^[a-zA-Z-' ]*$/",$name)) {
$nameErr = "Only letters and white space allowed";
}
}
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"]);
// check if URL address syntax is valid (this regular expression also allows dashes in the URL)
if (!preg_match("/\b(?:(?:https?|ftp):\/\/|www\.)[-a-z0-9+&@#\/%?=~_|!:,.;]*[-a-z0-9+&@#\/%=~_|]/i",$website)) {
$websiteErr = "Invalid URL";
}
}
if (empty($_POST["comment"])) {
$commentErr = "Comment is required";
} else {
$comment = test_input($_POST["comment"]);
}
}
function test_input($data) {
$data = trim($data);
$data = stripslashes($data);
$data = htmlspecialchars($data);
return $data;
}
?>
<h2>Please, give some comments for gochocit.com!</h2>
<p><span class="error">* required field</span></p>
<form method="post" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>">
Name: <input type="text" name="name" value="<?php echo $name;?>">
<span class="error">* <?php echo $nameErr;?></span>
<br><br>
E-mail: <input type="text" name="email" value="<?php echo $email;?>">
<span class="error">* <?php echo $emailErr;?></span>
<br><br>
Website: <input type="text" name="website" value="<?php echo $website;?>">
<br><br>
Comment: <textarea name="comment" rows="5" cols="40"><?php echo $comment;?></textarea>
<span class="error">* <?php echo $commentErr;?></span>
<br><br>
<input type="submit" name="submit" value="Submit">
</form>
<?php
echo "<h2>Your Input:</h2>";
echo "Name: ".$name;
echo "<br>";
echo "E-mail: ".$email;
echo "<br>";
echo "Website: ".$website;
echo "<br>";
echo "Comment: ".$comment;
?>
</body>
</html>
Trong hình trên, email khi nhập sai định dạng sẽ được thông báo lỗi.
Tham khảo: PHP Forms – Validate E-mail and URL
I am in fact grateful to the holder of this web page who has shared this impressive article at at this place.