【发布时间】:2018-02-01 06:35:12
【问题描述】:
我正在尝试使用 cURL 和 PHP 更新 mySQL 数据库,但是应该通过帖子发送的值没有插入到数据库中。我没有收到任何错误,并且根据 phpinfo() 启用了 cURL。这是我的脚本:
<?php
$data = [
'email' => 'jsnow@got.com',
'token' => '58938539'
];
$string = http_build_query($data);
$ch = curl_init("http://www.econcentre.com/receiver.php");
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_exec($ch);
curl_close($ch);
?>
这是接收器脚本:
<?php
require 'includes/db.php'; // Database connection. Connects with no errors raised
if(isset($_POST['email']) AND isset($_POST['token'])) {
$email = $_POST['email'];
$token = $_POST['token'];
$q = "INSERT INTO reset_tokens(email, token)";
$q .= " VALUES(?, ?)";
$stmt = $pdo->prepare($q);
$test = $stmt->execute([$email, $token]);
}
?>
【问题讨论】:
-
在
exec()之后检查 curl 错误了吗?if (curl_errno($ch)) { echo 'Curl error: ' . curl_error($ch); } -
感谢您的回复。我添加了你的 if 语句,但它没有回显错误。
-
那么,您是否在接收器脚本中
var_dump($_POST),在isset()之前?