PHP PDO Update语句不工作

PHP PDO Update语句不工作,php,mysql,arrays,pdo,Php,Mysql,Arrays,Pdo,对于天才们来说,这可能是一件容易的事情,但我已经尝试了我所知道的所有方法,但无法让这个UPDATE语句起作用。问题在于update语句或execute绑定。我希望该语句向用户的points列添加2个点 <?php $dbConnection = new PDO('mysql:dbname=App;host=localhost;charset=utf8', '*', '*'); $dbConnection->setAttribute(PDO::ATTR_EMULATE_PREPARES

对于天才们来说,这可能是一件容易的事情,但我已经尝试了我所知道的所有方法,但无法让这个UPDATE语句起作用。问题在于update语句或execute绑定。我希望该语句向用户的points列添加2个点

<?php
$dbConnection = new PDO('mysql:dbname=App;host=localhost;charset=utf8', '*', '*');
$dbConnection->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);
$dbConnection->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

$points = 2;
$username = $_POST["username"];
$password = $_POST["password"];
$response = array();
$stmt->$dbConnection->prepare("UPDATE user SET points = points + ? WHERE username = ? AND password = ?");
$stmt->execute(array($points, $username, $password));
$hi = $dbConnection->prepare("SELECT username, password, points FROM user WHERE username = ? AND password = ?");
$hi->execute(array($username, $password));
$red = $hi->fetchAll(PDO::FETCH_ASSOC);
if (count($red) > 0){
    $response["success"] = true;
    foreach($red as $item) {
        $response["username"] = $item["username"];
        $response["password"] = $item["password"];
        $asd = $item["points"];
        $response["points"] = (string)$asd;
    }
}else{
    $response["success"] = false;
}
    echo json_encode($response);
?>

您需要将$stmt分配给连接中准备好的语句

$stmt = $dbConnection->prepare("UPDATE user SET points = points + ? WHERE username = ? AND password = ?");

是的,你明白了!愚蠢的错误,根本没看到!我现在觉得自己很笨!我得等3分钟才能接受你的回答。谢谢你的帮助!