我正在学习 PDO,并发现确保我的陈述正确工作很棘手。我有一个 PHP 函数,它通过简单地将数字 1 添加到总数中来更新我的数据库。
function add_rating($place_id,$rating_id) {
//make $db accessible inside the function
global $db;
// query v1
$sql = "UPDATE places_ratings SET ? +1 WHERE place_id=?";
$q = $db->prepare($sql);
$q->execute(array($rating_id,$place_id));
}
我尝试了这种变体,但我都无法开始工作。我不知道我是不是用错了问号。我正在关注本指南以及之前的 SO question。最后我尝试了一种第一次工作的不同方法,所以我很想重新使用它,因为它看起来也简单多了。
function add_rating($place_id,$rating_id) {
//make $db accessible inside the function
global $db;
// query v2
$query = "UPDATE places_ratings SET $rating_id = ($rating_id +1) WHERE place_id = $place_id";
$update = $db->query($query);
}
我的问题是:哪种说法更好/更安全?其次,我对带有问号的第一个版本做错了什么?谢谢...