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

标签 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,依此类推!

我无法理解这一点。

最佳答案

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

附言。为您的站点添加 favicon.ico。

我冒昧地再次强调一下。这不是 favicon.ico 的罪魁祸首,而是 SEO 友好 url 的错误实现。 还有数百个其他请求应该导致 404 响应,而不是 View 增加。你必须治愈疾病,而不是症状之一。您必须修复您的入口点,该入口点不会处理对整个图像文件的请求

关于php - 使用 prepare 命令更新我的表,将值增加 2,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32437630/

相关文章:

mysql - 如何将两个sql结果合并到一个sql查询中?

php - 为什么在使用 MySQLi 在 PHP 中准备句子时显示错误

javascript - 有没有一种有效的方法可以让按钮自动将文本复制到剪贴板? (JavaScript)

php - MySQL 后续数字

php - 如何在wordpress页面上以不同格式显示第一篇文章?

mysql - 如何在phpmyadmin之外备份mysql数据库

php - 为什么我的表格中只显示一个结果?

php - mysqli_query 不再插入数据

php - laravel一对多记录插入和更新解决方案

php - Yii2 Rest api - Url 管理器添加参数