使用prepare命令更新我的表将值增加2

时间:2015-09-07 11:30:02

标签: php mysql mysqli prepare

我试图在php中运行这个简单的mysqli命令:

$query = "UPDATE config SET visit = visit + 1";
if ($stmt = $con->prepare($query)) {
    $stmt->execute();
    $stmt->close();
}

表配置只有1行。但是,该值代替1,它增加2!

因此,如果当前值为0,则下一个值为2,然后是4,等等!

我无法理解这一点。

1 个答案:

答案 0 :(得分:2)

这个问题与准备好的语句无关(顺便说一句,你不需要这个),甚至根本就没有sql。由于SEO友好网址的错误实现,这是你的整个PHP脚本被执行两次。您必须始终验证您是否正在处理有效请求。永远不要为无效的SQL运行任何SQL。

PS。为您的网站添加favicon.ico。

我会冒昧地再次强调它。责备不是favicon.ico,但是SEO友好网址的错误实现。将有数百个其他请求导致404响应,而不是视图增量。你必须治愈这种疾病,而不是其中一种症状。你必须修改你的入口点,不能处理整个图像文件的请求