PHP 中的 cURL 后无法回显任何内容
Cant echo anything after cURL in PHP
我的卷发效果很好。 cURL所在的文件是一个PHP文件,由.ajax
执行
我在 PHP 文件末尾回显 $apikey
,没有 cURL 脚本。它打印正确。
但是,一旦我放入 cURL,$apikey
就会停止打印
$ch = curl_init("https://url");
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
"Authorization: Bearer $apikey",
"Content-Type: application/json; charset=utf-8",
"Content-Length: " . strlen($data_string)
));
$json = curl_exec($ch);
curl_close($ch); //close the connection
echo $apikey;
如果我删除 curl_init
行,$apikey
会正确打印。
我在想 cURL 结果以某种方式阻止了之后执行的任何操作,但意识到如果我尝试 $json
也不会打印。
我也尝试过使用 curl_setopt($ch, CURLOPT_VERBOSE, false);
但没有区别。
在这里也找不到任何有用的东西。
知道可能是什么问题吗?
更新
Ajax片
$.ajax({
url: "curl.php",
method: "POST",
data: {
date: date,
time: time,
account: account,
userid: userid
},
success: function(response) {
console.log(response);
alert(response);
}
});
谢谢你,阿迪森。刚刚发现问题是什么......有趣的是它不需要对 .ajax 做任何事情,也不需要卷曲......触发 ajax 的按钮在一个表单中。因此,提交是在 ajax 执行的同时发生的。删除表格税解决了这个问题。
但我相信您应该为达到这一点而获得所有荣誉。所以,请回复问题,我可以很高兴地给你加分。
从评论/聊天来看,问题的根本原因似乎是您的 AJAX 调用从未真正起作用,因为表单同时提交并导致页面刷新。因此,删除此表单提交将导致按钮仅触发 AJAX 请求,而不会触发其他任何内容。然后一切都按预期工作。 cURL 没有错。
我的卷发效果很好。 cURL所在的文件是一个PHP文件,由.ajax
执行我在 PHP 文件末尾回显 $apikey
,没有 cURL 脚本。它打印正确。
但是,一旦我放入 cURL,$apikey
就会停止打印
$ch = curl_init("https://url");
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
"Authorization: Bearer $apikey",
"Content-Type: application/json; charset=utf-8",
"Content-Length: " . strlen($data_string)
));
$json = curl_exec($ch);
curl_close($ch); //close the connection
echo $apikey;
如果我删除 curl_init
行,$apikey
会正确打印。
我在想 cURL 结果以某种方式阻止了之后执行的任何操作,但意识到如果我尝试 $json
也不会打印。
我也尝试过使用 curl_setopt($ch, CURLOPT_VERBOSE, false);
但没有区别。
在这里也找不到任何有用的东西。
知道可能是什么问题吗?
更新 Ajax片
$.ajax({
url: "curl.php",
method: "POST",
data: {
date: date,
time: time,
account: account,
userid: userid
},
success: function(response) {
console.log(response);
alert(response);
}
});
谢谢你,阿迪森。刚刚发现问题是什么......有趣的是它不需要对 .ajax 做任何事情,也不需要卷曲......触发 ajax 的按钮在一个表单中。因此,提交是在 ajax 执行的同时发生的。删除表格税解决了这个问题。
但我相信您应该为达到这一点而获得所有荣誉。所以,请回复问题,我可以很高兴地给你加分。
从评论/聊天来看,问题的根本原因似乎是您的 AJAX 调用从未真正起作用,因为表单同时提交并导致页面刷新。因此,删除此表单提交将导致按钮仅触发 AJAX 请求,而不会触发其他任何内容。然后一切都按预期工作。 cURL 没有错。