2

我正在为我的应用程序开发一个超级简单的计数器。我可以使用 '$date' 和 '$c' 插入行,但更新不起作用。

这有效:

$c = 8;
$today = date('Y-m-d');
$insert_count = $db->prepare("INSERT INTO COUNTER (COUNTER.date, clicks) VALUES ('" . $today . "', ?)");
$insert_count->execute(array($c));

这不

$c = 8;
$today = date('Y-m-d');
$update_count = $db->prepare("UPDATE COUNTER SET clicks = clicks + ? WHERE COUNTER.date = '" . $today . "'");
$update_count->execute(array($c));

没有错误,什么都没有。

4

1 回答 1

0

我不认为 ? 绑定占位符适用于计算。您是否尝试过使用命名绑定参数?

$update_count = $db->prepare("UPDATE COUNTER SET clicks = clicks + :increment WHERE COUNTER.date = '" . $today . "'");
$update_count->execute(array("increment"=>$c));

当您说没有错误时,执行后该命令没有输出?

print_r($db->errorInfo());
于 2011-05-20T04:23:06.980 回答