Hướng dẫn dùng complete form trong PHP

Nhận dữ liệu từ form là một trong những công việc quan trọng trong lập trình web động. Chúng ta tạo ra những vùng để người xem web nhập thông tin vào (form), để rồi khi họ gửi lên server, các thông tin đó chúng ta sẽ tiếp nhận để xử lý.

Trong mỗi website, bạn sẽ tạo rất nhiều form để nhập liệu, như form login, form đăng ký thành viên, form đổi mật khẩu, form quên mật khẩu, form thêm hàng…

Trong form cũng có nhiều loại control khác nhau như textfield, checkbox, radio, file, select… cho nên để nhận dữ liệu từ form thì bạn cần biết qua một số thông tin sau:

Method của form html

Mỗi form có hai cách (method) gửi dữ liệu lên server, đó là post và get. Nếu form có method là post thì trong trang php bạn sử dụng $_POST để lấy dữ liệu, còn nếu form có method là get thì bạn sử dụng $_GET để lấy dữ liệu.

...
...

Trong trang web, bạn có thể tạo nhiều form (nếu muốn). Mỗi form là một vùng để người xem web nhập thông tin của mình vào và gửi lên server. Vậy trang nào trên server sẽ nhận dữ liệu? Hay nói cách khác là form sẽ gửi dữ liệu lên đâu trên server? Trả lời: form sẽ gửi dữ liệu lên file có địa chỉ bạn ghi trong thuộc tính action. Xem trong đoạn code trên, đó là trang xuly.php. Code tiếp nhận dữ liệu ($_POST, $_GET) bạn sẽ viết trong file này.

Khi nào thì dữ liệu được gửi từ form lên server?

Trong mỗi form html, phải có ít nhất một nút đóng vai trò submit. Nút đó bạn có thể tạo bằng ba cách. Đại khái code như sau:

 

 

Khi người xem web nhắp nút submit, dữ liệu trong form sẽ được gửi lên server

Ví dụ tạo 1 form đăng ký như sau

Hướng dẫn dùng complete form trong PHP

Code html:

ĐĂNG KÝ THÀNH VIÊN

Nhận dữ liệu trong các text control

Tag html cho các control có type là text, hidden, password,

 


    

Code php nhận dữ liệu từ form với method get

Code php nhận dữ liệu từ form với method post

Nhận dữ liệu radio

Code html:

  
 

Các radio có name giống nhau được xem như cùng một nhóm. Người xem phải chọn 1 mục thì trong nhóm thì giá trị của mục đó sẽ được gửi lên server khi submit. Nếu không có mục nào được chọn thì không có giá trị nào trong nhóm được gửi lên.

Code php nhận dữ liệu (form có method là Get)

$phai = $_GET['phai']; 

Code php nhận dữ liệu (form có method là post)

$phai = $_POST['phai']; 

Nhận dữ liệu checkbox

Code html:


 Nhìn mưa rơi 
 Nghe chim hót 
 Ngắm mây bay 
 Uống trà
 Vuốt râu

Mã lệnh PHP lấy dữ liệu với method POST

$nhinmuaroi = isset($_POST['st1']);
$nghechimhot= isset($_POST['st2']);
$ngammaybay = isset($_POST['st3']);
Hướng dẫn dùng complete form trong PHP

Nếu tên các checkbox giồng nhau và tận cùng là [] thì chúng được hiểu như 1 mảng. Chúng sẽ được lưu chung vào 1 mảng và bạn có thể lặp qua chúng để sử dụng. Ví dụ:


 Nhìn mưa rơi
 Nghe chim hót 
 Ngắm mây bay
 Uống trà
 Vuốt râu
Hướng dẫn dùng complete form trong PHP

Nhận dữ liệu từ select box

Selectbox hay dropdown list là danh sách thả xuống các mục để người xem web chọn. HTML là tag select với mỗi mục là tag option. Mỗi option có text và value

Hướng dẫn dùng complete form trong PHP

Code php tiếp nhận dữ liệu (method của form là post)

Nhận dữ liệu textarea

Textarea là control cho phép user nhập nhiều hàng chữ, khi submit , bạn có thể dùng code php nhận các dòng chữ user gõ để sử dụng.

Code php tiếp nhận (form có method post)

Trong textarea , mỗi lần người nhập gõ 1 phím enter thì 1 ký tự xuống hàng được tạo ra (không phải tag br nhé) . Đến khi họ submit thì các ký tự xuống hàng cũng được gửi lên theo. Trong mã lệnh php, bạn có thể dùng hàm nl2br để chuyển các kứ tự xuống hàng này thành tag

Hướng dẫn dùng complete form trong PHP

Các bài tham khảo thêm các bài lập trình php , Ôn tập database