Trước khi trình duyệt gửi thông tin, nó sẽ mã hóa thông tin đó bằng cách sử dụng sơ đồ gọi là mã hóa URL. Trong sơ đồ này, các cặp tên/giá trị được nối với nhau bằng các dấu hiệu bằng nhau và các cặp khác nhau được phân tách bằng dấu và
name1=value1&name2=value2&name3=value3
Dấu cách được xóa và thay thế bằng ký tự + và mọi ký tự không phải chữ và số khác được thay thế bằng giá trị thập lục phân. Sau khi thông tin được mã hóa, nó sẽ được gửi đến máy chủ
Phương thức NHẬN
Phương thức GET gửi thông tin người dùng đã mã hóa được thêm vào yêu cầu trang. Trang và thông tin được mã hóa được phân tách bằng dấu ?
//www.test.com/index.htm?name1=value1&name2=value2
Phương thức GET tạo ra một chuỗi dài xuất hiện trong nhật ký máy chủ của bạn, trong Vị trí của trình duyệt. hộp
Phương thức GET bị giới hạn chỉ gửi tối đa 1024 ký tự
Không bao giờ sử dụng phương thức GET nếu bạn có mật khẩu hoặc thông tin nhạy cảm khác được gửi đến máy chủ
Không thể sử dụng GET để gửi dữ liệu nhị phân, chẳng hạn như hình ảnh hoặc tài liệu từ, tới máy chủ
Có thể truy cập dữ liệu được gửi bằng phương thức GET bằng cách sử dụng biến môi trường QUERY_STRING
PHP cung cấp mảng kết hợp $_GET để truy cập tất cả thông tin đã gửi bằng phương thức GET
Hãy thử ví dụ sau bằng cách đưa mã nguồn vào kiểm tra. tập lệnh php
"; echo "You are ". $_GET['age']. " years old."; exit[]; } ?> Name: Age:
Nó sẽ tạo ra kết quả sau -
Phương thức ĐĂNG
Phương thức POST chuyển thông tin qua các tiêu đề HTTP. Thông tin được mã hóa như mô tả trong trường hợp của phương thức GET và đưa vào tiêu đề có tên QUERY_STRING
Phương thức POST không có bất kỳ hạn chế nào về kích thước dữ liệu được gửi
Phương thức POST có thể được sử dụng để gửi ASCII cũng như dữ liệu nhị phân
Dữ liệu được gửi bằng phương thức POST đi qua tiêu đề HTTP nên tính bảo mật phụ thuộc vào giao thức HTTP. Bằng cách sử dụng HTTP bảo mật, bạn có thể đảm bảo rằng thông tin của mình được bảo mật
PHP cung cấp mảng kết hợp $_POST để truy cập tất cả thông tin đã gửi bằng phương thức POST
Hãy thử ví dụ sau bằng cách đưa mã nguồn vào kiểm tra. tập lệnh php
"; echo "You are ". $_POST['age']. " years old."; exit[]; } ?> Name: Age:
Nó sẽ tạo ra kết quả sau -
Biến $_REQUEST
Biến PHP $_REQUEST chứa nội dung của cả $_GET, $_POST và $_COOKIE. Chúng ta sẽ thảo luận về biến $_COOKIE khi chúng ta giải thích về cookie
Biến PHP $_REQUEST có thể được sử dụng để lấy kết quả từ dữ liệu biểu mẫu được gửi bằng cả hai phương thức GET và POST
when using error_log to send email, not all elements of an extra_headers string are handled the same way. "From: " and "Reply-To: " header values will replace the default header values. "Subject: " header values won't: they are *added* to the mail header but don't replace the default, leading to mail messages with two Subject fields.
//www.test.com/index.htm?name1=value1&name2=value20
//www.test.com/index.htm?name1=value1&name2=value21
//www.test.com/index.htm?name1=value1&name2=value22
//www.test.com/index.htm?name1=value1&name2=value23
//www.test.com/index.htm?name1=value1&name2=value24
//www.test.com/index.htm?name1=value1&name2=value25
//www.test.com/index.htm?name1=value1&name2=value26
Curl và thư viện cốt lõi của nó libcurl được tạo bởi Daniel Stenberg và cho phép bạn tương tác với các máy chủ thông qua nhiều loại giao thức khác nhau, bao gồm HTTP, HTTPS, FTP và các giao thức khác. Libcurl hỗ trợ các chứng chỉ HTTPS, HTTP GET, POST, PUT, PATCH và các phương thức HTTP khác, tải lên tệp FTP [tải lên tệp FTP cũng có thể được thực hiện với phần mở rộng PHP FTP], tải lên dựa trên biểu mẫu HTTP, proxy, cookie và xác thực người dùng. Để sử dụng các hàm PHP Curl, bạn cần cài đặt libcurl 7. 10. 5 trở lên và biên dịch PHP với sự hỗ trợ của Curl. Hành vi của các hàm PHP Curl bị ảnh hưởng bởi curl. cài đặt cainfo trong php. tập tin ini
Phương thức yêu cầu HTTP POST là gì?
Phương thức yêu cầu HTTP POST được sử dụng để gửi dữ liệu đến máy chủ. Ví dụ: để gửi biểu mẫu đăng nhập hoặc liên hệ, tải lên hình ảnh hoặc gửi tệp JSON, XML hoặc PDF đến máy chủ
Làm cách nào để đăng yêu cầu bằng thư viện PHP Curl?
Để gửi yêu cầu bằng thư viện Curl, trước tiên bạn phải khởi tạo nó bằng cách gọi phương thức curl_init[]. URL mục tiêu được đặt bằng cách gọi phương thức curl_setopt[$curl, CURLOPT_URL, $url]. Để nói với PHP Curl rằng chúng ta muốn gửi một yêu cầu POST, chúng ta phải gọi phương thức curl_setopt[$curl, CURLOPT_POST, true]. Và để truyền dữ liệu POST cho PHP, chúng ta phải gọi phương thức curl_setopt[$curl, CURLOPT_POSTFIELDS, $data]. Một ví dụ hoàn chỉnh về việc gửi yêu cầu POST với thư viện PHP Curl trông như thế này
Ví dụ về yêu cầu POST của PHP
Phương pháp không có CURL để gửi yêu cầu POST bằng PHP
Phương thức stream_context_create[] của PHP có thể được sử dụng để gửi các yêu cầu POST mà không cần Curl. Nó không mạnh mẽ hay đơn giản như Curl, nhưng nó có thể thuận tiện hơn trong một số trường hợp. Để gửi một yêu cầu POST với các hàm luồng PHP, bạn cần tạo một đối tượng $options với các tiêu đề POST và nội dung thông báo POST bắt buộc và chuyển nó tới stream_context_create[]. Sau đó, bạn có thể lấy dữ liệu phản hồi POST từ máy chủ bằng cách gọi phương thức PHP file_get_contents[]. Một ví dụ hoàn chỉnh về việc gửi yêu cầu POST với các hàm luồng PHP trông như thế này
Ví dụ về yêu cầu POST của PHP
Làm cách nào để đăng JSON bằng PHP?
Để gửi dữ liệu JSON đến máy chủ, bạn phải cung cấp Loại nội dung. tiêu đề yêu cầu application/json và cung cấp dữ liệu JSON trong phần thân của thông báo POST. Tiêu đề Loại nội dung cho phép máy chủ diễn giải và xử lý chính xác dữ liệu nhận được
Ví dụ PHP POST JSON
Làm cách nào để đăng XML bằng PHP?
Để đăng dữ liệu XML lên máy chủ, bạn phải cung cấp Kiểu nội dung. tiêu đề yêu cầu application/xml và cung cấp dữ liệu XML trong phần thân của thông báo POST
Ví dụ PHP POST XML
login
password
DATA;
curl_setopt[$curl, CURLOPT_POSTFIELDS, $data];
$resp = curl_exec[$curl];
curl_close[$curl];
var_dump[$resp];
?>
Làm cách nào để đăng Biểu mẫu HTML bằng PHP?
Biểu mẫu HTML có thể được gửi với Loại nội dung. application/x-www-form-urlencoded tiêu đề yêu cầu và dữ liệu biểu mẫu có thể được cung cấp dưới dạng cặp khóa=giá trị, như minh họa trong ví dụ bên dưới
Ví dụ biểu mẫu PHP POST HTML
________số 8
Xem thêm
- Làm cách nào để POST dữ liệu JSON bằng PHP?
- Làm cách nào để gửi yêu cầu GET bằng PHP?
Các ví dụ và bài viết về API liên quan đến yêu cầu POST của PHP
Làm cách nào để POST JSON bằng Thư viện Curl PHP?