0

MySql データベースから最後の 2 行をエコーするこの短いコードがあります。問題は、1 行しか表示されないことです。最後の 1 行です。何が間違っているのかわかりません。別の Web サイトでほぼ同じコードを使用していますが、問題なく動作します。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);し、その 1 つだけを に残しwhileます。この最初の呼び出しは、最初の行を「盗む」ため、あと 1 行LIMIT 2しか受信できません。

于 2013-10-14T07:06:39.487 に答える
0

これを試してください....あなたは間違いを犯しています。$data = mysql_fetch_array ($クエリ) を削除します。

<?
$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 に答える