谁能帮助我如何做从表单(POST)发送到使用PHP和cURL的URL的数据?
使用cURL,所有我想要完成的是发送数据,我不想被重定向,也没有得到任何类型的输出(HTML或文本),只是提交数据。
最好知道数据是否已成功提交,以处理错误或重定向。
额外的信息。我认为我被重定向的原因是因为一旦我执行cURL,目标页面,这是一个第三方网站,有一个重定向到位,确认用户他们的数据已被接收,并且由于某种原因,当我使用cURL发送我的数据时,他们的重定向会影响我的页面,因此我的页面也重定向到他们的确认站点。
谢谢大家。
示例代码:
$sub_req_url ="http://domain.com/util/request";
$ch = curl_init($sub_req_url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1 );
curl_setopt($ch, CURLOPT_POSTFIELDS, "id=64&session=1&k=B0EA8835E&firstname=Name&lastname=Lastname&company=Company%20Name&email=me@gmail.com&work_phone=123-456-7890");
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_POST, 1);
$resp = curl_exec($ch);
curl_close($ch);
我编辑这篇文章是为了展示我正在使用的一个例子。我应该先把代码贴出来
function post($requestJson) {
$postUrl = $this->endpoint."?access_token=".$this->token;
//Get length of post
$postlength = strlen($requestJson);
//open connection
$ch = curl_init();
//set the url, number of POST vars, POST data
curl_setopt($ch,CURLOPT_URL,$postUrl);
curl_setopt($ch,CURLOPT_POST,$postlength);
curl_setopt($ch,CURLOPT_POSTFIELDS,$requestJson);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
//close connection
curl_close($ch);
return $response;
}
谁能帮助我如何做从表单(POST)发送到使用PHP和cURL的URL的数据?
请搜索网站和/或张贴你的代码如何做到这一点。看起来做实际的POST请求不是您的具体问题。在这种情况下,看看这个相关的问题:传递$_POST值与cURL和php cURL:我需要一个简单的post请求和检索页面示例
使用cURL,所有我想完成的是发送数据,我不想被重定向或得到任何类型的输出(HTML或TEXT),只是提交数据。
假设$ch
是你的旋度句柄:
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, false);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, false);
这些选项的含义在PHP手册页中有说明。然后执行curl_exec
并检查请求是否成功的返回值。
这部分的一个可能相关的问题是:使curl遵循重定向?