[英]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.