PDO UPDATE不更新 - 没有错误

时间:2014-02-19 15:04:03

标签: php mysql pdo

我是这个PDO的新手,我已经使用SELECT工作,但无法让UPDATE工作,希望我在这里找不到简单的东西?

非常感谢帮助!!

乔恩

$id = $intSessionUser;
$email = isset($_POST['email']) ? trim(strip_tags($_POST['email'])) : null;
$password = isset($_POST['password']) ? trim(strip_tags($_POST['password'])) : null;

$strSql = "UPDATE user2 SET user_email = :email, user_password = :password WHERE user_id = :id";
echo $strSql;

$STH = $DBH->prepare($SQL);

$STH->bindParam(':id', $id);
$STH->bindParam(':email', $email);
$STH->bindParam(':password', $password);
$STH->execute();
$missing = "Login details updated";

3 个答案:

答案 0 :(得分:0)

准备错误的sql?

替换

$STH = $DBH->prepare($SQL);

由:

$STH = $DBH->prepare($strSql);

答案 1 :(得分:0)

看起来你准备$ SQL应该是你的$ strSql?你在哪里定义$ DBH?

答案 2 :(得分:0)

PDO的工作方式,默认情况下,由于安全原因,错误是静默的。

你必须告诉PDO抛出错误:

// If there is an error executing database queries, we want PDO to know
$DBH->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

除此之外:

$STH = $DBH->prepare($SQL);

应该是

$STH = $DBH->prepare($strSql);

希望这有帮助