Hướng dẫn lập trình xử lý Form trong PHP

Hướng dẫn lập trình xử lý Form trong PHP

Như các bạn đã biết, điểm khác biệt giữa web tĩnh và web động 2.0 ngày nay là khả năng tương tác với người dùng vì vậy mới được gọi với một tên khác là: ứng dụng web thay vì trang web. Nếu các bạn đã sử dụng Gmail một lần thì các bạn cũng có thể thấy ở phần soạn thảo thư có những phần nhập người nhận, tiêu đề, nội dung thư đây cũng là một tính năng để tương tác với người dùng được gọi là Form. Vì vậy, hôm nay kiến thức web sẽ cùng các bạn đi tìm hiểu về cách tạo ra Form và cách lập trình để xử lý tiếp nhận những dữ liệu trên form để có thể tương tác với người dùng một cách hiệu quả nhất.

Hướng dẫn lập trình xử lý Form trong PHP

Hướng dẫn lập trình xử lý Form trong PHP

Cấu trúc của Form là các thẻ HTML không có liên quan tới PHP và như các bạn đã biết PHP xử lý thông qua các cặp thẻ <?php ?> vì vậy trong quá trình viết mã chúng ta có thể sử dụng các cặp xử lý PHP để ghép vào để giải quyết một số bài toán nhỏ khác. Một form được bao bọc bên ngoài bởi thẻ sau:

Trong đó action là url tiếp nhận và xử lý dữ liệu khi người dùng nhập và thực hiện hành động Submit. Còn method là phương thức truyền dữ liệu trong Form, có 2 phương thức truyền dữ liệu là GET và POST.

Đoạn Code mẫu giao diện Form

Mình sẽ ví dụ cho các bạn form đăng nhập có phương thức truyền dữ liệu là POST và URL nhận xử lý là: login.php

Giao diện hiển thị của đoạn code trên:

giao-dien-form-dang-nhap

Phương thức POST

Trong trường hợp method của form là POST, khi người dùng nhập dữ liệu vào bao gồm tài khoản, mật khẩu và bấm vào nút “Đăng nhập”, dữ liệu sẽ được truyền sang file: login.php. Tại form login.php này chúng ta sẽ lấy được dữ liệu thông qua biến môi trường toàn cục là $_POST; Như ví dụ trên form của chúng ta có 2 input với tên lần lượt là: userName và passWord vì vậy các bạn cũng cần gọi chính xác tên input trong biến $_POST mới có thể lấy ra được dữ liệu.

Đoạn code mẫu file: login.php

 

Phương thức GET

Đối với trường hợp method của form là GET, thì chúng ta sẽ lấy được dữ liệu thông qua biến $_GET.

 

Sự khác nhau giữa POST và GET

Khi sử dụng phương thức GET thì dữ liệu của bạn được truyền sang và thể hiện trên thanh URL của trình duyệt, còn với phương thức POST thì không hiển thị.

lap-trinh-php-phuong-thuc-get

Như các bạn có thể nhận thấy, nếu áp dụng phương thức GET trong trường hợp xử lý đăng nhập mà để lộ thông tin đầu vào trên thanh địa chỉ như vậy sẽ khiến thông tin tài khoản của người dùng không được bảo mật an toàn. Vì vậy đối với những form có yêu cầu tính bảo mật thông tin thì các bạn chỉ nên sử dụng phương thức POST cho Form của mình.

Lập trình Xử lý Form

Sau khi lấy được dữ liệu từ Form, và gán được cho biến chuỗi do các bạn tự định nghĩa, chúng ta có thể bắt đầu xử lý thông tin đăng nhập một cách dễ dàng. Để dễ hiểu hơn mình sẽ ví dụ cho các bạn như sau:

Giải thích

  • Nếu chưa nhập tài khoản thì in ra thông báo: chưa nhập Tài khoản
  • Nếu chưa nhập mật khẩu thì in ra thông báo: Chưa nhập mật khẩu
  • Nếu tài khoản nhập vào là “root” và mật khẩu nhập vào là “vertrigo” thì sẽ in ra thông báo đăng nhập thành công, ngược lại sẽ thông báo “Sai thông tin đăng nhập”

Ở ví dụ này, để dễ hiểu trong quá trình xử lý Form mình sử dụng điều kiện so sánh với một chuỗi đặt ra được thể hiện luôn trong đoạn code. Trong thực tế chúng ta cần phải thực hiện kết nối với cơ sở dữ liệu để so khớp dữ liệu mình sẽ hướng dẫn các bạn lập trình kết nối với CSDL ở phần sau.

Kết luận

Như vậy là các bạn đã có thể biết cách lập trình xử lý Form trong PHP ở mức cơ bản và hiểu được về 2 phương thức của Form rồi đó. Ở bài viết sau mình sẽ hướng dẫn các bạn lập trình kết nối với cơ sở dữ liệu MySQL để lưu trữ và khai thác dữ liệu để có thể làm được một ứng dụng web mang tính thực tế. Đây cũng là một phần quan trọng trong lập trình ứng dụng web PHP vì vậy mình hi vọng các bạn sẽ nắm vững những kiến thức này để có thể làm tốt hơn ở những phần sau.