Chúng ta sẽ tiếp tục với Form Validation. Phần trước chúng ta đã xét tới việc "Bắt buộc" nghĩa là sẽ "Thổi còi" nếu trường nào có yêu cần bắt buộc.
Ở phần đầu, chúng ta có dịp "liếc qua" hàm filter_var() trong việc xét hỏi tiêu chuẩn của Email. Hàm filter_var() sẵn trong thư viện PHP được sử dụng để xác thực hoặc làm sạch dữ liệu. Hàm này kiểm tra xem một biến có đáp ứng các tiêu chí nhất định hay không (xác thực), hoặc loại bỏ các ký tự không mong muốn ra khỏi một chuỗi (làm sạch).
Cú pháp của hàm filter_var():
filter_var(mixed $value, int $filter = FILTER_DEFAULT, array|int $options = 0): mixed
Trong đó:
$value: Biến bạn muốn lọc.
$filter: ID của bộ lọc cần áp dụng (ví dụ: FILTER_VALIDATE_EMAIL).
$options: Mảng liên kết tùy chọn hoặc mặt nạ bit của các cờ để tinh chỉnh hành vi lọc
Các loại bộ lọc chính
- Bộ lọc xác thực (FILTER_VALIDATE_*): Các bộ lọc này trả về dữ liệu nếu dữ liệu đó hợp lệ, hoặc trả về giá trị `false` nếu không hợp lệ.
- FILTER_VALIDATE_EMAIL: Kiểm tra định dạng email hợp lệ.
- FILTER_VALIDATE_INT: Đảm bảo giá trị là một số nguyên hợp lệ.
- FILTER_VALIDATE_IP: Xác thực địa chỉ IP (IPv4 hoặc IPv6).
- FILTER_VALIDATE_URL: Xác nhận rằng một chuỗi là một URL được định dạng đúng chuẩn.
if (empty($_POST["email"])) {$emailerr = "Bạn phải nhập địa chỉ Email";}else{$email = test_input($_POST["email"]);}
// kiểm tra đã nhập đúng định dạng email chưaif (!filter_var($email, FILTER_VALIDATE_EMAIL)) {$emailerr = "Định dạng Email không hợp lệ";}
<html><head><style>.error {color: #FF0000;}</style></head><body><?php// define variables and set to empty values$ten = $email = $gioitinh = $ghichu = $website = "";$tenerr = $emailerr = $gioitinherr = $ghichuerr= $websiteerr = "";if ($_SERVER["REQUEST_METHOD"] == "POST") {if (empty($_POST["ten"])) {$tenerr = "Bạn phải nhập họ tên";}else{$ten = test_input($_POST["ten"]);}if (empty($_POST["email"])) {$emailerr = "Bạn phải nhập địa chỉ Email";}else{$email = test_input($_POST["email"]);// kiểm tra đã nhập đúng định dạng email chưaif (!filter_var($email, FILTER_VALIDATE_EMAIL)) {$emailerr = "Định dạng Email không hợp lệ";}}$website = test_input($_POST["website"]);$ghichu = test_input($_POST["ghichu"]);$gioitinh = test_input($_POST["gioitinh"]);}function test_input($data) {$data = trim($data);$data = stripslashes($data);$data = htmlspecialchars($data);return $data;}?><h2>Ví Dụ PHP Form Validation </h2><form method="post" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>">Tên: <input type="text" name="ten"> <span class="error">* <?php echo $tenerr;?></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"><br><br>Ghi Chú: <textarea name="ghichu" rows="5" cols="40"></textarea><br><br>Giới tính:<input type="radio" name="gioitinh" value="nữ">Nữ<input type="radio" name="gioitinh" value="nam">Nam<br><br><input type="submit" name="submit" value="Submit"></form><?phpecho "<h2>Bạn đã điền thông tin:</h2>";echo $ten;echo "<br>";echo $email;echo "<br>";echo $website;echo "<br>";echo $ghichu;echo "<br>";echo $gioitinh;?></body></html>
Không có nhận xét nào:
Đăng nhận xét