Làm cách nào để xử lý yêu cầu POST trong PHP?

Chúng tôi sẽ giới thiệu một phương pháp để gửi một yêu cầu POST trong PHP bằng cách sử dụng phương pháp không có CURL với việc sử dụng các hàm http_build_query[], stream_context_create[]file_get_contents[]

Chúng tôi sẽ chỉ cho bạn một phương pháp để gửi yêu cầu POST trong PHP bằng CURL. CURL được sử dụng để gửi yêu cầu HTTP đến máy chủ web. Mô-đun CURL thường được cài đặt sẵn với PHP. Nếu nó chưa được cài đặt, chúng ta nên cài đặt thủ công để gửi yêu cầu của máy chủ bằng PHP

Chúng tôi sẽ chỉ cho bạn một ví dụ để gửi yêu cầu POST trong PHP bằng cách sử dụng CURL bằng cách tạo một hàm. Phương pháp này rất giống với phương pháp thứ hai. Nó sử dụng chức năng do người dùng xác định để gửi yêu cầu. Chúng tôi có thể sử dụng lại mã cung cấp dữ liệu bài đăng khác nhau và URL

Sử dụng Phương thức không có CURL Sử dụng Hàm stream_context_create[]file_get_contents[] để gửi yêu cầu POST trong PHP

Chúng ta có thể gửi yêu cầu POST trong PHP bằng cách sử dụng các hàm như hàm http_build_query[], stream_context_create[]file_get_contents[] mà không cần sử dụng CURL. Chúng ta có thể sử dụng hàm http_build_query[] để tạo các tham số truy vấn để gửi yêu cầu POST. Chúng ta có thể tạo một mảng để chỉ định tiêu đề http, phương thức và nội dung. Chúng tôi sử dụng chức năng stream_context_create[] để xử lý dữ liệu được truyền. Hàm file_get_contents[] đọc nội dung của url thành chuỗi. Chúng tôi sử dụng biến toàn cục

# php 7.*
";
echo "ID: ". $_POST['id'];
?>
5 để đọc dữ liệu

Ví dụ: tạo hàm http_build_query[] và tạo một mảng bên trong hàm. Tạo các khóa

# php 7.*
";
echo "ID: ". $_POST['id'];
?>
7 và
# php 7.*
";
echo "ID: ". $_POST['id'];
?>
8 và các giá trị
# php 7.*
";
echo "ID: ". $_POST['id'];
?>
9 và
#php 7.x
 'Wayne',
    'id' => 2,
];
$postdata = http_build_query[$fields];
$ch = curl_init[]
curl_setopt[$ch,CURLOPT_URL, '//localhost/request.php'];
curl_setopt[$ch,CURLOPT_POST, true];
curl_setopt[$ch,CURLOPT_POSTFIELDS, $postdata];
curl_setopt[$ch,CURLOPT_RETURNTRANSFER, true];
$result = curl_exec[$ch];
echo $result;
?>
0 tương ứng trong mảng. Gán hàm với một biến
#php 7.x
 'Wayne',
    'id' => 2,
];
$postdata = http_build_query[$fields];
$ch = curl_init[]
curl_setopt[$ch,CURLOPT_URL, '//localhost/request.php'];
curl_setopt[$ch,CURLOPT_POST, true];
curl_setopt[$ch,CURLOPT_POSTFIELDS, $postdata];
curl_setopt[$ch,CURLOPT_RETURNTRANSFER, true];
$result = curl_exec[$ch];
echo $result;
?>
1. Tạo một mảng để chỉ định phương thức HTTP, tiêu đề và nội dung. Đặt giá trị cho các khóa
#php 7.x
 'Wayne',
    'id' => 2,
];
$postdata = http_build_query[$fields];
$ch = curl_init[]
curl_setopt[$ch,CURLOPT_URL, '//localhost/request.php'];
curl_setopt[$ch,CURLOPT_POST, true];
curl_setopt[$ch,CURLOPT_POSTFIELDS, $postdata];
curl_setopt[$ch,CURLOPT_RETURNTRANSFER, true];
$result = curl_exec[$ch];
echo $result;
?>
2,
#php 7.x
 'Wayne',
    'id' => 2,
];
$postdata = http_build_query[$fields];
$ch = curl_init[]
curl_setopt[$ch,CURLOPT_URL, '//localhost/request.php'];
curl_setopt[$ch,CURLOPT_POST, true];
curl_setopt[$ch,CURLOPT_POSTFIELDS, $postdata];
curl_setopt[$ch,CURLOPT_RETURNTRANSFER, true];
$result = curl_exec[$ch];
echo $result;
?>
3 và
#php 7.x
 'Wayne',
    'id' => 2,
];
$postdata = http_build_query[$fields];
$ch = curl_init[]
curl_setopt[$ch,CURLOPT_URL, '//localhost/request.php'];
curl_setopt[$ch,CURLOPT_POST, true];
curl_setopt[$ch,CURLOPT_POSTFIELDS, $postdata];
curl_setopt[$ch,CURLOPT_RETURNTRANSFER, true];
$result = curl_exec[$ch];
echo $result;
?>
4 là
#php 7.x
 'Wayne',
    'id' => 2,
];
$postdata = http_build_query[$fields];
$ch = curl_init[]
curl_setopt[$ch,CURLOPT_URL, '//localhost/request.php'];
curl_setopt[$ch,CURLOPT_POST, true];
curl_setopt[$ch,CURLOPT_POSTFIELDS, $postdata];
curl_setopt[$ch,CURLOPT_RETURNTRANSFER, true];
$result = curl_exec[$ch];
echo $result;
?>
5,
#php 7.x
 'Wayne',
    'id' => 2,
];
$postdata = http_build_query[$fields];
$ch = curl_init[]
curl_setopt[$ch,CURLOPT_URL, '//localhost/request.php'];
curl_setopt[$ch,CURLOPT_POST, true];
curl_setopt[$ch,CURLOPT_POSTFIELDS, $postdata];
curl_setopt[$ch,CURLOPT_RETURNTRANSFER, true];
$result = curl_exec[$ch];
echo $result;
?>
6 và biến
#php 7.x
 'Wayne',
    'id' => 2,
];
$postdata = http_build_query[$fields];
$ch = curl_init[]
curl_setopt[$ch,CURLOPT_URL, '//localhost/request.php'];
curl_setopt[$ch,CURLOPT_POST, true];
curl_setopt[$ch,CURLOPT_POSTFIELDS, $postdata];
curl_setopt[$ch,CURLOPT_RETURNTRANSFER, true];
$result = curl_exec[$ch];
echo $result;
?>
1. Bọc mảng này bên trong mảng khác
#php 7.x
 'Wayne',
    'id' => 2,
];
$postdata = http_build_query[$fields];
$ch = curl_init[]
curl_setopt[$ch,CURLOPT_URL, '//localhost/request.php'];
curl_setopt[$ch,CURLOPT_POST, true];
curl_setopt[$ch,CURLOPT_POSTFIELDS, $postdata];
curl_setopt[$ch,CURLOPT_RETURNTRANSFER, true];
$result = curl_exec[$ch];
echo $result;
?>
8. Gán mảng cho một biến
#php 7.x
 'Wayne',
    'id' => 2,
];
$postdata = http_build_query[$fields];
$ch = curl_init[]
curl_setopt[$ch,CURLOPT_URL, '//localhost/request.php'];
curl_setopt[$ch,CURLOPT_POST, true];
curl_setopt[$ch,CURLOPT_POSTFIELDS, $postdata];
curl_setopt[$ch,CURLOPT_RETURNTRANSFER, true];
$result = curl_exec[$ch];
echo $result;
?>
9. Lấy
#php 7.x
 'Wayne',
    'id' => 2,
];
$postdata = http_build_query[$fields];
$ch = curl_init[]
curl_setopt[$ch,CURLOPT_URL, '//localhost/request.php'];
curl_setopt[$ch,CURLOPT_POST, true];
curl_setopt[$ch,CURLOPT_POSTFIELDS, $postdata];
curl_setopt[$ch,CURLOPT_RETURNTRANSFER, true];
$result = curl_exec[$ch];
echo $result;
?>
9 làm tham số cho hàm stream_context_create[] và gán nó cho một biến
#php 7.x
 'Scott',
    'id' => 3
];
httpPost['//localhost/request.php', $data];
?>
2. Sử dụng hàm file_get_contents[] và áp dụng URL
#php 7.x
 'Scott',
    'id' => 3
];
httpPost['//localhost/request.php', $data];
?>
4 làm tham số đầu tiên. Sử dụng giá trị boolean
#php 7.x
 'Scott',
    'id' => 3
];
httpPost['//localhost/request.php', $data];
?>
5 và biến
#php 7.x
 'Scott',
    'id' => 3
];
httpPost['//localhost/request.php', $data];
?>
2 làm tham số thứ hai và thứ ba. Gán hàm cho một biến
#php 7.x
 'Scott',
    'id' => 3
];
httpPost['//localhost/request.php', $data];
?>
7 và in nó. Tạo một tệp PHP
#php 7.x
 'Scott',
    'id' => 3
];
httpPost['//localhost/request.php', $data];
?>
8 và lặp lại các khóa
# php 7.*
";
echo "ID: ". $_POST['id'];
?>
7 và
# php 7.*
";
echo "ID: ". $_POST['id'];
?>
8 bằng cách sử dụng biến
# php 7.*
";
echo "ID: ". $_POST['id'];
?>
5

Trong ví dụ bên dưới,

# php 7.*
";
echo "ID: ". $_POST['id'];
?>
7 và
# php 7.*
";
echo "ID: ". $_POST['id'];
?>
8 là dữ liệu được đăng bằng phương thức POST. Tệp
#php 7.x
 'Scott',
    'id' => 3
];
httpPost['//localhost/request.php', $data];
?>
8 đọc các tham số truy vấn bằng cách sử dụng biến
# php 7.*
";
echo "ID: ". $_POST['id'];
?>
5

Mã ví dụ

# php 7.*
 'Robert',
        'id' => '1'
    ]
];
$opts = array['http' =>
    array[
        'method' => 'POST',
        'header' => 'Content-type: application/x-www-form-urlencoded',
        'content' => $postdata
    ]
];
$context = stream_context_create[$opts];
$result = file_get_contents['//localhost/request.php', false, $context];
echo $result;
?>

# php 7.*
";
echo "ID: ". $_POST['id'];
?>

đầu ra

Sử dụng CURL để gửi yêu cầu POST trong PHP

CURL là viết tắt của URL khách hàng. Chúng ta có thể sử dụng CURL để gửi yêu cầu POST thông qua tập lệnh PHP. Phiên bản PHP cần mô-đun cuộn tròn để thực thi các chức năng cuộn tròn khác nhau. Trong phương pháp này, chúng tôi sử dụng hàm http_build_query[] như trong phương pháp trên để thực hiện các tham số truy vấn. Chúng ta có thể sử dụng hàm http_build_query[]7 để khởi tạo kết nối CURL trong tập lệnh. Chúng tôi sử dụng các hàm http_build_query[]8 với một số tùy chọn như http_build_query[]9, stream_context_create[]0 và stream_context_create[]1. Các tùy chọn này đặt URL, yêu cầu HTTP POST request và POST dữ liệu tương ứng. Chúng ta có thể sử dụng hàm http_build_query[]8 để trả về nội dung của URL và sử dụng hàm stream_context_create[]3 để thực hiện yêu cầu POST

Ví dụ: tạo các khóa

# php 7.*
";
echo "ID: ". $_POST['id'];
?>
7 và
# php 7.*
";
echo "ID: ". $_POST['id'];
?>
8 và các giá trị stream_context_create[]6 và stream_context_create[]7 trong một mảng stream_context_create[]8. Sử dụng mảng làm tham số trong hàm http_build_query[] và gán hàm với một biến
#php 7.x
 'Wayne',
    'id' => 2,
];
$postdata = http_build_query[$fields];
$ch = curl_init[]
curl_setopt[$ch,CURLOPT_URL, '//localhost/request.php'];
curl_setopt[$ch,CURLOPT_POST, true];
curl_setopt[$ch,CURLOPT_POSTFIELDS, $postdata];
curl_setopt[$ch,CURLOPT_RETURNTRANSFER, true];
$result = curl_exec[$ch];
echo $result;
?>
1. Mở một kết nối CURL bằng cách sử dụng hàm http_build_query[]7 và gán nó cho một biến file_get_contents[]2. Viết ba hàm http_build_query[]8 và sử dụng biến file_get_contents[]2 làm tham số đầu tiên trong cả ba hàm. Là tham số thứ hai trong các hàm, hãy viết các tùy chọn http_build_query[]9, stream_context_create[]0 và stream_context_create[]1 trong các hàm thứ nhất, thứ hai và thứ ba tương ứng. Đặt tham số thứ ba lần lượt là
#php 7.x
 'Scott',
    'id' => 3
];
httpPost['//localhost/request.php', $data];
?>
4, file_get_contents[]9 và
#php 7.x
 'Wayne',
    'id' => 2,
];
$postdata = http_build_query[$fields];
$ch = curl_init[]
curl_setopt[$ch,CURLOPT_URL, '//localhost/request.php'];
curl_setopt[$ch,CURLOPT_POST, true];
curl_setopt[$ch,CURLOPT_POSTFIELDS, $postdata];
curl_setopt[$ch,CURLOPT_RETURNTRANSFER, true];
$result = curl_exec[$ch];
echo $result;
?>
1 trong ba hàm. Gọi một hàm http_build_query[]8 và sử dụng biến file_get_contents[]2 làm tham số đầu tiên, tùy chọn stream_context_create[]3 làm tham số thứ hai và giá trị boolean file_get_contents[]9 làm tham số thứ ba. Gọi hàm stream_context_create[]5 từ biến
#php 7.x
 'Scott',
    'id' => 3
];
httpPost['//localhost/request.php', $data];
?>
7 và in ra giá trị
#php 7.x
 'Scott',
    'id' => 3
];
httpPost['//localhost/request.php', $data];
?>
7. Sử dụng cùng một tệp
#php 7.x
 'Scott',
    'id' => 3
];
httpPost['//localhost/request.php', $data];
?>
8 của phương pháp đầu tiên

Mã ví dụ

#php 7.x
 'Wayne',
    'id' => 2,
];
$postdata = http_build_query[$fields];
$ch = curl_init[]
curl_setopt[$ch,CURLOPT_URL, '//localhost/request.php'];
curl_setopt[$ch,CURLOPT_POST, true];
curl_setopt[$ch,CURLOPT_POSTFIELDS, $postdata];
curl_setopt[$ch,CURLOPT_RETURNTRANSFER, true];
$result = curl_exec[$ch];
echo $result;
?>

đầu ra

Tạo một hàm do người dùng xác định sử dụng CURL để gửi yêu cầu POST trong PHP

Chúng ta có thể tạo một phương thức để lấy đầu vào URL và dữ liệu POST để gửi yêu cầu POST. Phương pháp này cũng sử dụng CURL làm phương pháp thứ hai. Nó sử dụng tất cả các chức năng cuộn tròn như trước. Phương pháp này nhằm sử dụng lại mã cho nhiều URL và dữ liệu

Ví dụ: tạo một hàm stream_context_create[]9 và lấy các biến file_get_contents[]0 và file_get_contents[]1 làm đối số. Mở kết nối curl với hàm http_build_query[]7 và lấy biến file_get_contents[]0 làm tham số. Sử dụng ba hàm http_build_query[]8 như trong phương pháp thứ hai. Sử dụng phương thức stream_context_create[]3 để thực thi dữ liệu POST. Tạo một mảng file_get_contents[]1 và tạo các khóa

# php 7.*
";
echo "ID: ". $_POST['id'];
?>
7 và
# php 7.*
";
echo "ID: ". $_POST['id'];
?>
8 và các giá trị file_get_contents[]9 và http_build_query[]0. Gọi phương thức stream_context_create[]9 với
#php 7.x
 'Scott',
    'id' => 3
];
httpPost['//localhost/request.php', $data];
?>
4 là URL và mảng file_get_contents[]1 là dữ liệu. Phương pháp này cũng sử dụng tệp
#php 7.x
 'Scott',
    'id' => 3
];
httpPost['//localhost/request.php', $data];
?>
8 như hai phương pháp trên

Làm cách nào để sử dụng phương thức POST trong PHP?

Trong phương thức POST của PHP, dữ liệu từ HTML FORM được gửi/thu thập bằng biến siêu toàn cầu $_POST . Phương thức này gửi thông tin được mã hóa được nhúng trong phần thân của yêu cầu HTTP và do đó dữ liệu không hiển thị trong URL trang không giống như Phương thức GET.

Làm cách nào để NHẬN phản hồi POST trong PHP?

Phương thức POST chuyển thông tin qua 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.

Làm cách nào để viết API POST trong PHP?

Nội dung .
Tạo khung dự án PHP cho API REST của bạn
Định cấu hình cơ sở dữ liệu cho PHP REST API của bạn
Thêm một lớp cổng cho bảng người
Triển khai API PHP REST
Bảo mật API PHP REST của bạn bằng OAuth 2. 0
Thêm xác thực vào PHP REST API của bạn

$_ GET và $_ POST trong PHP là gì?

$_GET là một mảng các biến được truyền tới tập lệnh hiện tại thông qua các tham số URL. $_POST là một mảng các biến được truyền tới tập lệnh hiện tại thông qua phương thức HTTP POST .

Chủ Đề