当其他同一页面运行良好但另一个页面在同一查询代码上出错时,我收到错误。
这是我的代码有什么问题?
$ttt = mysql_query("SELECT * FROM like WHERE (user_id='$user_id' AND sound_id='$sound_id')",$link) or die(mysql_error());
错误
您的SQL语法有错误;检查与您的MySQL服务器版本相对应的手册,以便使用正确的语法,例如WHERE(user_id ='' AND sound_id ='')'在第1行
答案 0 :(得分:3)
like
是一个SQL reserved word,你应该在反引号中使用“like”``
$ttt = mysql_query("SELECT * FROM `like` WHERE (user_id='$user_id' AND sound_id='$sound_id')",$link) or die(mysql_error());
答案 1 :(得分:1)
like
是保留字,不能像您尝试的那样用作表名。尝试将其设置为反引号或重命名表。
答案 2 :(得分:1)
就像保留关键字一样使用反引号
`like`
https://dev.mysql.com/doc/refman/5.5/en/reserved-words.html
在mysql中使用LIKE
select * from table where username like '%aaa';
select * from table where username like '%aaa%';
select * from table where username like 'aaa%';
等
答案 3 :(得分:0)
作为一项规则,您不应该使用保留字,但如果您必须,并且出于此问题的目的,请在其周围加上括号。
$ttt = mysql_query
("SELECT *
FROM [like]
WHERE (user_id='$user_id' AND sound_id='$sound_id')",$link) or die(mysql_error());
答案 4 :(得分:0)
Like
是保留字。最好更改您的table name
或者像like
试试这个。
$ttt = mysql_query("SELECT * FROM like_table WHERE user_id=$user_id AND sound_id=$sound_id",$link) or die(mysql_error());