0

我有这个简短的代码来回显 MySql 数据库中的最后两行。问题是它只显示一个 - 一个但最后一行。我无法弄清楚我做错了什么。我在另一个网站上使用几乎相同的代码,它工作得很好。如果我在 Mysql 查询中使用 LIMIT 1 ,我将无话可说。你能帮忙吗?非常感谢。

<?
   $query = mysql_query("SELECT no, date, msg FROM news ORDER BY -no LIMIT 2");
   $data = mysql_fetch_array( $query );
   while ( $data = mysql_fetch_array( $query ) ) {
      $text = nl2br ( $data['msg'] );
      echo ('<b>Aktuality z Hlavatice ('.$data['date'].')</b><br /><br />' . $text);
   }
?>
4

2 回答 2

9

首先删除$data = mysql_fetch_array ($query);并仅将那个留在while. 这第一个电话“偷走”了你的第一行,因为LIMIT 2你只会再收到一个。

于 2013-10-14T07:06:39.487 回答
0

试试这个....你犯了错误。删除 $data = mysql_fetch_array ($query);

<?
$query = mysql_query("SELECT no, date, msg FROM news ORDER BY -no LIMIT 2");

while ($data=mysql_fetch_array($query))
{   
$text = nl2br ($data['msg']);
echo ('<b>Aktuality z Hlavatice ('.$data['date'].')</b><br /><br />'.$text);
}
?>
于 2013-10-14T07:08:16.570 回答