Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/55.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php SQL按+1递增选择列_Php_Mysql - Fatal编程技术网

Php SQL按+1递增选择列

Php SQL按+1递增选择列,php,mysql,Php,Mysql,我一直试图通过搜索找到答案,但我遇到了不推荐使用的代码和相互冲突的建议 我试图选择通过url传递的ID的赞成票数。我想在这个数字上加一个,然后更新这个表。我不太确定我到底错在哪里了 编辑:我尝试过使用yesvotes=yesvotes+1,这会使我从0变为1,但不会使我从1变为2或更远。我只需要一个点击的链接,它通过URL传递所需的“ID”,并使用$\u GET检索,将1添加到“yesvotes”列。我认为这是一个简单的过程,但似乎我遗漏了什么,或者在某个地方出现了语法错误 对不起,我只是想学学

我一直试图通过搜索找到答案,但我遇到了不推荐使用的代码和相互冲突的建议

我试图选择通过url传递的ID的赞成票数。我想在这个数字上加一个,然后更新这个表。我不太确定我到底错在哪里了

编辑:我尝试过使用yesvotes=yesvotes+1,这会使我从0变为1,但不会使我从1变为2或更远。我只需要一个点击的链接,它通过URL传递所需的“ID”,并使用$\u 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();


    ?>

你不需要这些。。。您可以像这样执行更新联接


如果您只想将1添加到现有值中,只需更新showsubmit SET yesvotes=yesvotes+1,其中ID=…这有什么并发性问题?这似乎是个问题。$votetotal=$vote++;你这里有个问题$投票是一个数组,而不是一个值。因为您使用的是fetch_数组,并且没有枚举字段,所以应该使用$votetotal=$vote[0]+1;我以前试过做yesvotes=yesvotes+1…等等,它成功地将我从0变为1,但不会再进一步。无论我运行脚本多少次,单击链接它都保持在1。Machavity,您建议的代码中[0]的意义是什么?抱歉,这有点超出我的理解。我真的很想理解,但可能需要一点推动。
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;