
Hệ thống quản trị đào tạo trực tuyến
Các bài tập dưới đây yêu cầu sinh viên tạo các Form HTML, sử dụng mảng siêu toàn cục $_GET và $_POST để xử lý dữ liệu, và thực hiện các bước Validation cơ bản.
Mục tiêu: Làm quen với phương thức GET và sử dụng htmlspecialchars() để ngăn ngừa lỗi hiển thị (XSS cơ bản).
**Search_GET.php**.method="GET" và action="" (gửi dữ liệu về chính tệp này).
<input type="text" name="keyword">.if (isset($_GET['keyword']))):
$_GET['keyword'].htmlspecialchars() để làm sạch chuỗi trước khi hiển thị.<script>alert('Hacked')</script>) và quan sát kết quả hiển thị đã được làm sạch trên trình duyệt.Mục tiêu: Sử dụng phương thức POST cho dữ liệu nhạy cảm và kiểm tra dữ liệu trống (Empty Validation).
**Register_POST.php**.method="POST", bao gồm các trường:
type="password").$_POST.Kiểm tra xem cả username và password có bị trống không (sử dụng hàm empty()).
Mục tiêu: Áp dụng các hàm Validation của PHP để kiểm tra định dạng email và độ dài mật khẩu.
**Register_POST.php** (Bài 3.2). Thêm trường nhập liệu **Email** (name="email").filter_var($email, FILTER_VALIDATE_EMAIL) để xác thực định dạng Email. Nếu không hợp lệ, lưu lỗi "Email không đúng định dạng."strlen($password) < 6, lưu lỗi "Mật khẩu phải có ít nhất 6 ký tự."$errors = []) để lưu trữ tất cả các lỗi được tìm thấy.empty($errors)), hiển thị thông báo thành công. Ngược lại, hiển thị tất cả các lỗi đã thu thập được cho người dùng.Mục tiêu: Hiểu ngữ cảnh sử dụng đồng thời hai phương thức.
**Product_Detail.php**.$_GET['id'] để lấy ID sản phẩm từ URL (ví dụ: Product_Detail.php?id=SP001). Hiển thị thông tin sản phẩm có ID đó.method="POST", bao gồm trường:
$_GET.$_POST.