我的网站上有一个错误
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in ../../../guestbook.php on line 117
当我查看我的第117行
时while ($row=mysql_fetch_array($query)) {
我认为我的查询错了......
$query = mysql_query("SELECT * FROM guestbook WHERE permission='0' AND ignore='0' ORDER BY gbid DESC");
我认为当我使用单词AND时我总是会出错,而且我不知道如何制作TWO WHERE条件。
如果我缺少解决此问题所需的说明或代码,请询问我是否可以进行编辑。
谢谢! :)
答案 0 :(得分:3)
检查查询是否错误的简单方法:
$result = mysql_query(... your query here ...) or die(mysql_error());
^^^^^^^^^^^^^^^^^^^^^^
如果出现问题,只需让mysql告诉你。您的错误消息表示查询因某种原因失败,您盲目地认为它成功了,并尝试使用mysql_query在后续操作中返回的布尔值FALSE值。永远不要假设数据库操作成功。
编辑:给出您的错误消息,因为ignore
是保留字。用反引号逃脱它:
... AND `ignore`=0 ORDER BY ...
^ ^
强制mysql将其视为字段名。
答案 1 :(得分:1)
忽略是mysql中的保留字。 (http://dev.mysql.com/doc/refman/5.5/en/reserved-words.html)
你可以试试
$query = mysql_query("SELECT * FROM guestbook WHERE `permission`= 0 AND `ignore`=0 ORDER BY gbid DESC");
或更改coloum名称
答案 2 :(得分:0)
试试这个
$query = mysql_query("SELECT * FROM guestbook WHERE permission= 0 AND ignore=0 ORDER BY gbid DESC");
如果权限和忽略是TYPE INT,则不需要引号......