Tác giả: Dương Nguyễn Phú Cường Show
Ngày đăng: Hồi xưa đóHồi xưa đó Lưu đồ gởi dữ liệu thông qua yêu cầu POST (Request POST) bằng FORM từ Client đến ServerYêu cầu POST (Request POST) được gởi từ FORMPhía ClientYêu cầu (request) được gởi từ Form nhập liệu của người dùng, với cấu hình của Form như sau:
Phía Server Nếu Request POST được gởi đến Server, thì việc phân tách dữ liệu sẽ do biến <?php // Phân tách dữ liệu từ khối dữ liệu được truyền đến từ CLIENT (Request POST) // Biến lưu trữ thông tin Username $ten_tai_khoan = $_POST['username']; // Biến lưu trữ thông tin Password $mat_khau = $_POST['password']; // Biến lưu trữ thông tin Full name $ho_ten = $_POST['full_name']; // Xử lý các logic/Nghiệp vụ ... // Lưu vào database ... echo "Chào mừng bạn {$ho_ten} đã đăng ký thành công. Tên tài khoản để đăng nhập Hệ thống là: ${ten_tai_khoan}."; ?> Các trường hợp thường dùng Request POSTDo dữ liệu được gởi bằng phương thức POST (method POST) sẽ không hiển thị trên thanh URL mà được đính kèm trong Request Body. Do đó, sẽ được sử dụng trong các trường hợp cần phải che dấu dữ liệu. Thường được sử dụng trong các trường hợp sau:
Ví dụ tạo Form thu thập thông tin và Xử lý Đăng kýStep 1: tạo file hiển thị Form cho người dùng (End User) Nhập liệu
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Xử lý Request POST trong PHP | Nền Tảng .vn</title> </head> <body> <h2>Form đăng ký | NenTang.vn</h2> <!-- 1. Thuộc tính action="" dùng để chỉ định địa chỉ file PHP - nơi sẽ nhận dữ liệu từ CLIENT gởi đến và xử lý theo các LOGIC nào đó... 2. Phương thức (method) dùng để gởi request có thể sử dụng: GET hoặc POST * Nếu sử dụng phương thức POST: - Dữ liệu trong FORM sẽ được truyền đóng gói và đính kèm trong Request Body khi gởi đến Server http://domain/action.php Ví dụ: http://localhost/hoc-php/xu-ly-form-dang-ky.php --> <form name="frmRegister" id="frmRegister" action="xu-ly-dang-ky.php" method="POST"> <table border="1" width="600px" cellspacing="0px" cellpadding="10px"> <tr> <td>Tài khoản:</td> <td> <!-- Thuộc tính name="" cần có trong các thành phần Nhập liệu (input, select, ...) FORM sẽ đóng gói dữ liệu người dùng (End User) nhập liệu vào đúng tên được đặt trong thuộc tính name="" Ví dụ: đặt tên là name="username" --> <input type="text" name="username" id="username" /> </td> </tr> <tr> <td>Mật khẩu:</td> <td> <!-- Thuộc tính name="" cần có trong các thành phần Nhập liệu (input, select, ...) FORM sẽ đóng gói dữ liệu người dùng (End User) nhập liệu vào đúng tên được đặt trong thuộc tính name="" Ví dụ: đặt tên là name="password" --> <input type="text" name="password" id="password" /> </td> </tr> <tr> <td>Họ tên:</td> <td> <!-- Thuộc tính name="" cần có trong các thành phần Nhập liệu (input, select, ...) FORM sẽ đóng gói dữ liệu người dùng (End User) nhập liệu vào đúng tên được đặt trong thuộc tính name="" Ví dụ: đặt tên là name="full_name" --> <input type="text" name="full_name" id="full_name" /> </td> </tr> <tr> <td colspan="2" align="center"> <input type="submit" value="Đăng ký" /> </td> </tr> </table> </form> </body> </html> Step 2: Phân tách dữ liệu từ Request POST gởi đến và xử lý logic/nghiệp vụ Đăng ký trên Server
<?php // Phân tách dữ liệu từ khối dữ liệu được truyền đến từ CLIENT (Request POST) // Biến lưu trữ thông tin Username $ten_tai_khoan = $_POST['username']; // Biến lưu trữ thông tin Password $mat_khau = $_POST['password']; // Biến lưu trữ thông tin Full name $ho_ten = $_POST['full_name']; // Xử lý các logic/Nghiệp vụ ... // Lưu vào database ... echo "Chào mừng bạn {$ho_ten} đã đăng ký thành công. Tên tài khoản để đăng nhập Hệ thống là: ${ten_tai_khoan}."; ?> |