Khi bạn vào
một website để
mua hàng, nghe nhạc , chia sẻ thông tin hay chat chít gì đó ... thì form là yếu tố
không thể thiếu để giúp bạn thực hiện các thao tác này
Cấu
trúc của 1 form có dạng
<form action = "" method = "">
</form>
Trong đó action sẽ là nơi nhận và xử lý dữ liệu khi người dùng nhập vào form và ấn submit để gửi. 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à POST và GET. Cụ thể chúng ta sẽ xét ví dụ sau
- Ta có form với method đang là POST và action dữ liệu sẽ được gửi đến file login.php
<form action = "" method = "">
</form>
Trong đó action sẽ là nơi nhận và xử lý dữ liệu khi người dùng nhập vào form và ấn submit để gửi. 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à POST và GET. Cụ thể chúng ta sẽ xét ví dụ sau
- Ta có form với method đang là POST và action dữ liệu sẽ được gửi đến file login.php
Giao diện của form khi view lên trình duyệt
- Khi người dùng nhấn nút "Đăng nhập" thì dữ liệu mà người dùng vừa nhập vào ( bao gồm username và password) sẽ được truyền theo phương thức POST sang file login.php, Ở file login.php này chúng ta sẽ lấy được dữ liệu thông qua biến môi trường $_POST.
- Trong PHP chúng ta sẽ lấy được giá trị của các text field qua thuộc tính name, ở đây chúng ta đang có 2 text field là name="user_name" và name="user_pass" trong cặp thẻ input type="text" và input type="password"
1
2
3
4
5
6
7
8
|
File
login.php : <?php $username = $_POST['user_name']; $password =
$_POST['user_pass']; echo "Your name :
".$username."<br
/>"; echo "Your pass :
".$password; ?> |
- Tương tự
nếu người truyền dữ liệu theo phương thức GET thì chúng ta sẽ lấy được dữ liệu
qua biến $_GET
1
2
3
4
5
6
7
8
|
File
login.php : <?php $username = $_GET['user_name']; $password = $_GET['user_pass']; echo "Your name :
".$username."<br
/>"; echo "Your pass :
".$password; ?> |
- Sự khác
nhau giữa POST và GET là gì ?
Với phương thức POST thì dữ liệ được truyền đi ngầm sang file login.php, còn với phương thức GET dữ liệu được gủi đi và dữ liệu mà chúng ta vừa nhập vào sẽ được show lên ở thanh address bar của trình duyệt
Việc truyền dữ liệu lên thanh địa chỉ như vậy khiến cho thông tin của chúng ta không được bảo mật, người dùng hoàn toàn có thể can thiệp đến dữ liệu của chúng ta vì vậy với những form có thông tin cần bảo mật như đăng nhập hay đăng ký thì chúng ta không nên sử dụng phương thức GET
- Okie đó là 2 phương thức POST và GET, tiếp theo chúng ta tiến hành check thông tin do người dùng nhập dữ liệu vào
Với phương thức POST thì dữ liệ được truyền đi ngầm sang file login.php, còn với phương thức GET dữ liệu được gủi đi và dữ liệu mà chúng ta vừa nhập vào sẽ được show lên ở thanh address bar của trình duyệt
Việc truyền dữ liệu lên thanh địa chỉ như vậy khiến cho thông tin của chúng ta không được bảo mật, người dùng hoàn toàn có thể can thiệp đến dữ liệu của chúng ta vì vậy với những form có thông tin cần bảo mật như đăng nhập hay đăng ký thì chúng ta không nên sử dụng phương thức GET
- Okie đó là 2 phương thức POST và GET, tiếp theo chúng ta tiến hành check thông tin do người dùng nhập dữ liệu vào
1. <?php
2. $username = "";
3. $password = "";
4. // Nếu người dùng chưa nhập dữ liệu,
đưa ra thông báo
5. if($_POST['user_name'] == NULL){
6. echo "Please enter your
name";
7. die();
8. }else{
9. $username = $_POST['user_name'];
10. }
11. // Nếu chưa nhập password
12. if($_POST['user_pass'] == NULL){
13. echo "Please enter your
pass";
14. die();
15. }else{
16. $password = $_POST['user_pass'];
17. }
18. // Nhập đúng user và pass
19. if($username == "yourname"
and $password == "123456"){
20. echo "Login successfuly";
21. }else{
22. echo "Login false";
23. }
24. ?>
|
Ở ví dụ
trên ta sẽ bắt các trường hợp xảy ra khi người dùng thao tác. Ban đầu nếu người
dùng không nhập username thì báo lỗi yêu cầu họ nhập dữ liệu, ngược lại khi
người dùng nhập dữ liệu thì chúng ta sẽ lấy được username mà họ vừa nhập vào
thông qua biến $_POST['user_name'] và gán cho biến $username.
Tương tự password cũng như username vậy, nếu người dùng chưa nhập dữ liệu thì báo lỗi, ngược lại thì lấy dữ liệu họ vừa nhập và gán vào biến $password.
Kiểm tra xem người dùng có nhập username = "yourname" và password = "123456" hay không, nếu họ nhập đúng thì sẽ thông báo cho biết đã đăng nhập thành công, ngược lại thì báo cho họ biết họ nhập sai username và password
Đúng ra thì sau khi nhập username và password , chúng ta sẽ truy vấn với database để so sánh xem thông tin họ nhập vào có giống với thông tin lưu trong database hay không. ở đây chúng ta chưa học đến database nên tôi tạm thời lấy thông tin user và pass làm ví dụ, mục đích chính là để các bạn hiểu được cách xử lý đơn giản nhất.
Tương tự password cũng như username vậy, nếu người dùng chưa nhập dữ liệu thì báo lỗi, ngược lại thì lấy dữ liệu họ vừa nhập và gán vào biến $password.
Kiểm tra xem người dùng có nhập username = "yourname" và password = "123456" hay không, nếu họ nhập đúng thì sẽ thông báo cho biết đã đăng nhập thành công, ngược lại thì báo cho họ biết họ nhập sai username và password
Đúng ra thì sau khi nhập username và password , chúng ta sẽ truy vấn với database để so sánh xem thông tin họ nhập vào có giống với thông tin lưu trong database hay không. ở đây chúng ta chưa học đến database nên tôi tạm thời lấy thông tin user và pass làm ví dụ, mục đích chính là để các bạn hiểu được cách xử lý đơn giản nhất.
Tin tức khác:
Không có nhận xét nào:
Đăng nhận xét