2013-07-01 31 views
0

我的表在MySQL类似如下:集团MySQL表结果送达

| sq | date | title | description | 
----------------------------------- 
| 10 | 10-06| xxxx | blah blah | 
| 09 | 10-06| xxxx | blah blah | 
| 08 | 10-06| xxxx | blah blah | 
| 07 | 10-06| xxxx | blah blah | 

现在我想在降平方米(SQUENCE)的顺序使用PHP在屏幕上显示它们。

我用下面的代码,但它显示了一个错误:

$result = mysql_query("SELECT * FROM posts WHERE (SELECT MAX(sn) FROM posts)"); 

echo('<ul class="news">'); 
while($row=mysql_fetch_array($result)) { 
    $date=$row["date"]; 
    $title=$row["title"]; 
    $description=$row["description"]; 
    echo "<li><strong>$date</strong><h4><a href='#'>$lastname</a></h4>$description</li>"; 
} 
echo('</ul>'); 

错误消息:

Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in C:\wamp\www\final\index.php on line 99 
Call Stack 

三和在一个链接向人展示的时间。

在此先感谢。

+0

感谢@DontVoteMeDown [MySQL的\ _fetch \ _array()预计参数1是资源,布尔 – vidya

+0

可能的重复代码的$result测试在选择](http://stackoverflow.com/questions/2973202/mysql-fetch-array-expects-parameter-1-to-be-resource-boolean-given-in-select) –

+0

请参阅[这个答案]( http://stackoverflow.com/a/11674313/250259)如何解决这个问题。 –

回答

1

尝试,

SELECT * FROM帖子ORDER BY平方米DESC

,如果你想限制让说,10行使用此

SELECT * FROM帖子ORDER BY平方米DESC限制结果10

编辑:RE:mysql_fetch_array()预计参数1是资源

此错误意味着,

$result = mysql_query("SELECT * FROM posts WHERE (SELECT MAX(sn) FROM posts)");

声明失败即查询是错误的

当MySQL未能执行查询你FALSE返回到$result,而不是资源句柄。

由于@vidya说,你应该总是在mysql_query()语句后

$result = mysql_query("SELECT * FROM posts WHERE (SELECT MAX(sn) FROM posts)"); 
if (! $result) { 
    die(mysql_errno() . ' ' . mysql_error()); 
} 
+0

生病了试试看,感谢rply – vidya

+0

@vidya试试这个,再加上,作为一个最佳实践,采用验证if语句来处理这些错误,例如:if($ result){}。祝你好运。 – DontVoteMeDown

+0

家伙得到这个错误警告:mysql_fetch_array()期望参数1是资源,boole – vidya