【发布时间】:2014-07-21 02:55:16
【问题描述】:
我正在尝试运行以下 PDO 查询,但它根本不更新记录。如果我通过 PHPMyAdmin 运行代码,它会运行良好并更新记录。
$dbhost = 'localhost';
$dbuser = 'general';
$dbpass = 'removed';
$dbname = 'removed';
try {
$dbo = new PDO('mysql:host=localhost;dbname='.$dbname, $dbuser, $dbpass);
}catch (PDOException $e) {
print "Error!: " . $e->getMessage() . "<br/>";
die();
}
$query="UPDATE `soldier_info` SET `soldier_image`= '$soldier_image' WHERE `soldier_id`=" . $_POST['soldier_id'];
echo $query;
$q=$dbo->prepare($query);
$q->execute();
谁能告诉我我做错了什么?我没有看到任何错误消息回显或打印在页面上,当我回显 $query 时它显示:
UPDATE `soldier_info` SET `soldier_image`= 'http://www.bringingthemhome.co.uk/preview/images/soldiers/soldier1.jpg' WHERE `soldier_id`=4
如前所述,代码通过 PHPMyAdmin 运行良好
【问题讨论】:
-
“我没有看到任何错误消息” - 设置为 $dbo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
-
感谢@reg 告诉我我的用户无权更新! :) 菜鸟失误
标签: php mysql sql pdo phpmyadmin