簡體   English   中英

SQL查詢沒有顯示第一個結果?

[英]SQL query not displaying the first result?

我想在我的php頁面中動態創建導航菜單。

我有一個查詢來創建活動頁面的列表,但由於某種原因,第一個結果從未顯示

$menu = mysql_query("SELECT link FROM myTable WHERE active_page='y' ORDER BY menu_order");
$menulist = mysql_fetch_array($menu);

  while($menulist = mysql_fetch_array($menu))
  {
  $themenu = $themenu . "<li><a href='#'>" . $menulist['link'] . "</a></li>";
  }

  $echo $themenu;

回報

第2項
第3項
第4項
...

任何想法為什么會這樣

去掉

$menulist = mysql_fetch_array($menu);

這個無關緊要的電話正在拉動第一條記錄,但是當你在你的循環中時,你沒有做任何事情。

它不會顯示第一個項目,因為您在顯示任何內容之前提取兩次...

$menu = mysql_query("SELECT link FROM myTable WHERE active_page='y' ORDER BY menu_order");

  while($menulist = mysql_fetch_array($menu))
  {
  $themenu = $themenu . "<li><a href='#'>" . $menulist['link'] . "</a></li>";
  }

  $echo $themenu;

你應該放棄

$menulist = mysql_fetch_array($menu);

這會將光標向前移動一步,並有效地跳過第一行。

你也應該在你的echo之前放棄$

它正在跳過第一個元素,因為你在while循環之前調用了mysql_fetch_array($menu)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM