有没有办法在不使用网络表单的情况下发送POST数据?我正在使用第三方支付处理器,我可以选择手动提交付款,但数据必须采用POST格式化。
我计划将我的脚本作为CRON作业运行,因此它是自动化的,通过Web表单提交没有用户输入。
提前感谢。
答案 0 :(得分:20)
尝试CURL
http://php.net/manual/en/book.curl.php
//set POST variables
$url = 'http://domain.com/get-post.php';
$fields = array(
'lname' => urlencode($last_name),
'fname' => urlencode($first_name),
'title' => urlencode($title),
'company' => urlencode($institution),
'age' => urlencode($age),
'email' => urlencode($email),
'phone' => urlencode($phone)
);
//url-ify the data for the POST
foreach($fields as $key=>$value) { $fields_string .= $key.'='.$value.'&'; }
rtrim($fields_string, '&');
//open connection
$ch = curl_init();
//set the url, number of POST vars, POST data
curl_setopt($ch,CURLOPT_URL, $url);
curl_setopt($ch,CURLOPT_POST, count($fields));
curl_setopt($ch,CURLOPT_POSTFIELDS, $fields_string);
//execute post
$result = curl_exec($ch);
//close connection
curl_close($ch);
答案 1 :(得分:1)
您可以使用cURL扩展程序,甚至file_get_contents()
使用自定义上下文。