php - SQL 将 SELECT 列递增 +1

标签 php mysql

<分区>

我一直试图通过搜索找出答案,但我遇到了已弃用的代码和相互矛盾的建议。

我正在尝试使用通过 url 传递的 ID 选择赞成票的数量。然后我想在该数字上加一并更新表格。我不太确定到底哪里出了问题。

编辑:我试过使用 yesvotes=yesvotes +1,这让我从 0 到 1,但不会让我从 1 到 2 或更远。我只需要一个点击链接(它通过 URL 传递所需的“ID”并使用 $_GET 检索)以将 1 添加到“yesvotes”列。我认为这是一个简单的过程,但似乎我遗漏了什么或某处有语法错误。

抱歉新手,只是想学习。

    <?php

    $entry = $_GET ['id'];

    include 'connect.php';

    $result = $mysqli->query("SELECT * FROM yesvotes WHERE ID = '" . $entry ."'"); 

    $vote = $result->fetch_array();

    $votetotal = $vote++;


    $sql = 
    "UPDATE showsubmit
    SET yesvotes = '" . $votetotal . "'
    WHERE ID = '" . $entry . "'";

    $conn->query($sql);

    $conn->close();


    ?>

最佳答案

你不需要所有这些......你可以像这样执行update-join

UPDATE showsubmit ss
JOIN ( SELECT ID, COUNT(*) as total
       FROM yesvotes WHERE ID = 2334 ) XXX ON ss.ID = XXX.ID
    SET ss.yesvotes = XXX.total + 1;

关于php - SQL 将 SELECT 列递增 +1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40927925/

相关文章:

php - 选择一个 mysql 时间戳范围

php - 准备好的声明不返回任何东西

php - Ionic 应用程序因 PHP 脚本而中断

python - django 对象保存在开发中的 sqlite 和生产中的 mysql 中有所不同

PHP/MySQL : how to search case insentitively

php - sqlite数据库,多个请求

php - 客户端和服务器 php sql bug

mysql - Liquibase格式化的sql前提条件tableExists

mysql - 是否需要主键?

PHP 多维数组 + MySQLi $row 数组数据