Php MySQL ORDER BY语句返回布尔值?

Php MySQL ORDER BY语句返回布尔值?,php,mysql,Php,Mysql,我完全不知道为什么会发生这种情况,但我的简单MySQL语句使用了orderby。。。当我尝试执行查询时,DESC命令给出了一个非常奇怪的错误。 错误是 mysql_fetch_assoc() expects parameter 1 to be resource, boolean given in E:/.../home.php on line 23 我的代码是: $data = mysql_query("SELECT * FROM `blogposts` LIMIT 0, 30 ORDER B

我完全不知道为什么会发生这种情况,但我的简单MySQL语句使用了
orderby。。。当我尝试执行查询时,DESC
命令给出了一个非常奇怪的错误。 错误是

mysql_fetch_assoc() expects parameter 1 to be resource, boolean given in E:/.../home.php on line 23
我的代码是:

$data = mysql_query("SELECT * FROM `blogposts` LIMIT 0, 30 ORDER BY id DESC");
while($results = mysql_fetch_assoc($data))//error here
我不知道为什么。感谢您的帮助。
哦,顺便说一句,我知道每个看这个问题的人都会因为我仍在使用
mysql.*
库而对我大加指责,而且会有一篇关于它的坏处以及我易受SQL注入攻击的评论。在被问到之前,我们先回答一下,这不是在线的,它纯粹是一个在本地主机上运行的家庭项目。所以,甚至都不用麻烦教训我。

ORDER BY
子句必须在
LIMIT
子句之前

SELECT * FROM `blogposts` ORDER BY id DESC LIMIT 0, 30 

这是
SELECT
语句的语法,请参见这里:+1,以避免无聊的mysqli布道。@OllieJones谢谢:)。我对同样的评论感到厌烦,我投了500万票