我正在创建位于here的网站。
在我的单个页面(example)上,它只显示一个项目,我希望它更新我的数据库中名为“mobi”的视图字段,其中+1命中当前设置为int(6)
我希望它能够从数据库中查看promo_title。
页面通过我所有页面上的include_once
php代码连接到数据库。
我一直在使用的代码是:
$query = $pdo->prepare ("UPDATE mobi SET views = views +1 WHERE promo_title= ? ");
$query->bindValue(1, $promo_title);
$query->execute();
但它似乎不起作用。
请问有人可以告诉我哪里出错了吗?还有另一种方法吗?
如果您需要更多信息,请询问,我会更新。
谢谢你。答案 0 :(得分:0)
如果您在$query->rowCount();
之后立即调用它,execute()
的价值是多少?
我打赌它是零。我敢打赌你的WHERE
子句与任何行都不匹配。
第一次尝试更新给定promo_title
的表时,可能尚未插入匹配的行。如果这是真的,你必须插入行。
您的promo_title
列可能是CHAR(n)
列,而不是VARCHAR(n)
列。试试这个SQL而不是你必须测试这个假设:
UPDATE mobi SET promo_views = promo_views +1 WHERE TRIM(promo_title) = TRIM(?)
请注意,由于TRIM
上的promo_title
函数最终会失败使用任何索引,因此性能会很糟糕。但如果它有效,你就会知道什么是错的。