-2

我有这个功能:

function updateinfos($id) {
    parametrs();
    $Log_query = mysql_query("SELECT max(recent) FROM song") or die(mysql_error());
    $Res_user = mysql_fetch_array($Log_query);
    $max = $Res_user[0] + 1;
    $Log_query2 = mysql_query("UPDATE song SET recent = '$max' AND number = number + 1 WHERE id = '$id'") or die(mysql_error());
}

我在查询更新中遇到问题,因为它不起作用而且我不知道为什么。

4

1 回答 1

4

您的 UPDATE 语法错误。

UPDATE song
SET   recent = '$max' AND number = number + 1
WHERE id = '$id'

通过使用 AND,您将创建一个布尔表达式,而不是设置两列的值。

您应该编写一个 UPDATE 语句来更改多个列,如下所示:

UPDATE song
SET   recent = '$max',
      number = number + 1
WHERE id = '$id'

换句话说,使用逗号,而不是 AND。

于 2013-01-22T21:02:07.410 回答