PDO变量没有捕获/传递值

时间:2015-02-02 16:08:29

标签: pdo

这段代码可以正常工作,但它只是改变了正确的PDO - 我需要将where子句中的“$ user_ID”更改为“:user_ID”。

但是,当我这样做时,代码不会将贡献更新为3(这是代码的目标)。但只要我不将$ user_ID更改为:user_ID,它确实可以工作并更新贡献。

任何人都可以从中看到为什么以及我做错了什么?

$yesupdate = "UPDATE points SET contributions = contributions + 3 WHERE ID
= $user_ID";   
$stmt4 = $dbh->prepare($yesupdate);
$stmt4->bindParam(':user_ID', $user_ID, PDO::PARAM_INT); 
$stmt4->bindParam(':WID', $yes_WID, PDO::PARAM_INT);        
$stmt4->bindParam(':approved', $e = Y, PDO::PARAM_STR);   
$stmt4->bindParam(':position', $row2[0]['position'], PDO::PARAM_INT);                                        
$stmt4->execute();

仅供参考,以上代码是遵循以下查询的第二个查询:

$yesupdate = "UPDATE writing SET approved = :approved, position = :position
WHERE WID = :WID";
$stmt2 = $dbh->prepare($yesupdate);
$stmt2->bindParam(':WID', $yes_WID, PDO::PARAM_INT);        
$stmt2->bindParam(':approved', $e = Y, PDO::PARAM_STR);   
$stmt2->bindParam(':position', $row2[0]['position'], PDO::PARAM_INT);                                        
$stmt2->execute();

0 个答案:

没有答案