MySql语句中的WHERE子句打破页面

时间:2017-02-16 18:08:48

标签: mysql

我为此声明选择了所有适当的列。当我更改WHERE user_id = $ user,并且$ user是一个数字时,这是有效的。但它似乎不喜欢用户名字母。用户是我表格中的有效列,并且' john'确实存在。我做错了什么?

$user = 'john';

// Set the timestamp from the current system time
$time = time();

// Put our query together:
$query =    "UPDATE table set 
                    `time` = {$time}
                    WHERE user = {$user}";

3 个答案:

答案 0 :(得分:0)

你错过了一个","在" {$ time}"?

之后

答案 1 :(得分:0)

检查用户列中的数据,我觉得它是数字的。如果您坚持使用用户名,请查看函数的MySQL文档,将用户名转换为用户号,并在WHERE子句中使用它。

答案 2 :(得分:0)

在您的查询中,此处:

 `user_id` = {$user},
 `time` = {$time}
  WHERE user = {$user}";

您指向两个相同的值$ user,一个用于id,一个用于用户,您确定在JS脚本中没有两次定义该值吗?尝试为每个值指定不同的名称,这可能会有所帮助