Mysql Update用户Balance SQL语法错误

时间:2018-08-24 10:26:36

标签: mysql sql

我想更新用户余额,但我不知道该怎么做。 用我的代码不起作用:

 $sql = "UPDATE apiusers SET balance = balance - (product_price) WHERE username = (username);";
if(mysqli_query($link, $sql)){
    echo "Records added successfully.";
} else{
    echo "ERROR: Could not able to execute $sql. " . mysqli_error($link);
}

表apiuser:

+-------------+
| Field       | 
+-------------+
| id          | 
| user        |
| pass        | 
| balance     |
| lastip      | 
| lastlogind  |
| email       |
| verification|
+-------------+

2 个答案:

答案 0 :(得分:1)

我期望这样的事情:

?

(当然,我不知道如何识别用户。)

nav用于传递参数。您应该使用参数,而不是将值填充到字符串中。

答案 1 :(得分:-1)

你忘记了平等

$sql = "UPDATE apiusers 
        SET balance = (balance - product_price)
        WHERE user = \"".$username."\";";

\“用户名\”,因为“会关闭$ sql的字符串,并使用\”可以避免。

您需要一个“位置”,以便您可以使用ID xy更新该列。