Trong bài học trước, chúng ta đã tìm hiểu một số kiến thức cơ bản về môn lập trình PHP được tóm tắt một cách cô đọng súc tích. Tiếp theo ta nghiên cứu thêm một nội dung khá quan trọng đó là Form và cách xử lý giá trị form trong PHP. Các nội dung chính được kể đến gồm :
Form là gì ?
Form được xem là ứng dụng quan trọng trong ngôn ngữ lập trình PHP có tác dụng giúp cập nhật thông tin một cách linh hoạt và dễ dàng quản lý chung nhờ vào sự kết hợp chặt chẽ với cơ sở dữ liệu.
Khi ta có nhu cầu thiết kế website để chia sẻ thông tin, nghe nhạc, mua hàng,.. thì form là yếu tố không thể thiếu giúp bạn thực hiện thao tác này.
Cấu trúc của form
Cấu trúc của một form có dạng như sau :
Trong đó :
- Action đóng vai trò nhận và xử lý dữ liệu khi người dùng nhập vào form và ấn nút submit để gửi thông tin.
- Method là thương thức truyền dữ liệu trong form, bao gồm 02 phương thức là POST và GET.
Form trong HTML được đặt trong phần <body.</body>
Ví dụ minh hoạ về Form
Ví dụ Login form
Sau khi lưu đoạn code trên thành file login.html và show file này thì sẽ hiển thị form có dạng sau :
form đăng nhập
Khi người dùng thực hiện đăng nhập, dữ liệu mà người dùng nhập vào sẽ được truyền tới file login.php theo phương thức POST. Và ở file login.php này chúng ta sẽ thực hiện lấy dữ liệu thông qua biến môi trường $_POST.
Ví dụ cách sử dụng phương thức POST để lấy dữ liệu
Trong PHP, ta sẽ lấy được giá trị của các text field thông qua thuộc tính name. Và ta xét thấy có 2 text field là name=”username” và name=”password” trong cặp thẻ input type=”text” và input type=”password”
Tương tự như vậy, nếu chúng ta dùng phương thức GET thì chúng ta sẽ lấy dữ liệu thông qua biến $_GET
ví dụ về cách sử dụng phương thức GET để lấy dữ liệu
Với phương thức POST thì dữ liệu được truyền đi ngầm sang file login.php, còn với phương thức GET thì dữ liệu mà chúng ta nhập vào sẽ được show lên thanh địa chỉ trình duyệt.
Sau khi lấy được dữ liệu người dùng nhập vào, ta tiến hành kiểm tra thông tin theo cơ chế sau :
- Mặc định là giá trị username và password ở trạng thái rỗng.
- Nếu user chưa nhập vào thông tin ở ô username mà nhất nút sumit thì xuất thông báo yêu cầu user nhập thông tin.
- Nếu user đã nhập tên nhưng chưa nhập password, thì xuất thông báo yêu cầu user nhập lại password.
- Nếu user đã nhập đẩy đủ username và password thì tiến hành kiểm tra thông tin đó có khớp với dữ liệu đã được lưu trong database chưa ? Nếu khớp thì xuất thông báo "Login sucessfully !", nếu không trùng khớp thì xuất thông báo "Login fail !"
so sánh username password với dữ liệu trong database
Về nguyên tắc, sau khi nhập username và password thì sẽ thực hiện truy vấn đến database để so sánh xem thông tin nhập vào có trùng khớp với thông tin đã được lưu trong database không ? Tuy nhiên do ở đây chưa học đến phần database nên tạm thời gác lại và hẹn các bạn tại một bài viết cách sử dụng hàm readfile() và fopens() trong PHP để tìm hiểu một số phương thức thao tác với file trong PHP.