【发布时间】:2014-05-26 11:41:22
【问题描述】:
我有一个 HTML 中的菜单结构,如下所示...
<ul class="nav navbar-nav navbar-right">
<li class="active"><a href="index.php">Home</a></li>
<li><a href="about-us.php">About Us</a></li>
<li><a href="services.php">Services</a></li>
<li class="dropdown">
<a href="#" class="dropdown-toggle" data-toggle="dropdown">Pages <i class="icon-angle-down"></i></a>
<ul class="dropdown-menu">
<li><a href="page1.php">Page1</a></li>
<li><a href="page2.php">Page2</a></li>
<li><a href="page3.php">Page3</a></li>
</ul>
</li>
<li><a href="blog.php">Blog</a></li>
<li><a href="contact-us.php">Contact</a></li>
</ul>
我想让它成为一个数据库驱动的动态菜单。
我的 MySQL 数据库结构是这样的……
---------------------------------------------------------------
| id | label | link | parent id |
---------------------------------------------------------------
| 1 | Home | index.php | 0 |
| 2 | About Us | about-us.php | 0 |
| 3 | Services | services.php | 0 |
| 4 | Page | # | 0 |
| 5 | Page1 | page1.php | 4 |
| 6 | Page2 | page2.php | 4 |
| 7 | Page3 | page3.php | 4 |
| 8 | Blog | blog.php | 0 |
| 9 | Contact Us | contact-us.php | 0 |
---------------------------------------------------------------
我想要输出...
---------------------------------------------------------
HOME ABOUT US SERVICES PAGES BLOG CONTACT
---------------------------------------------------------
| PAGE 1 |
| PAGE 2 |
| PAGE 3 |
------------
喜欢这个picture
我试过了……
function render_menu($parent_id){
global $menu_html;
$result=mysql_query("SELECT * FROM clt_menu WHERE parent=$parent_id");
if (mysql_num_rows($result) == 0) {
return;
}
if ($parent_id == 0) {
$menu_html.="<ul class=\"nav navbar-nav navbar-right\">\r\n";
} else {
$menu_html.="\r\n<li class=\"dropdown\">";
$menu_html.="<ul class=\"dropdown-menu\">\r\n";
}
while($row=mysql_fetch_array($result)){
$menu_html.="\r\n<li><a href=\"{$row['link']}\">{$row['label']}</a>";
render_menu($row['id']);
$menu_html.="</li>";
}
$menu_html.="\r\n</ul>";
return $menu_html;
}
但我没有得到想要的输出。我该怎么办?
有没有人可以解决这个问题?
【问题讨论】:
-
你可以为你运行的脚本添加你得到的输出吗?
-
@edvinas.me 我正确地获得了第一级菜单的输出,但下拉菜单就像
unodered list,左边有一个小点[链接]tinypic.com/view.php?pic=10xzfab&s=8#.U4Q-oqjWLSw。没有得到下拉菜单 -
您在运行脚本后仍然没有添加 HTML 输出..
-
@edvinas.me html 输出为
<ul class="nav navbar-nav navbar-right"> <li><a href="index.php">Home</a></li> <li><a href="about-us.php">About Us</a></li> <li><a href="services.php">Services</a></li> <li><a href="#">Pages</a> <li class="dropdown"><ul class="dropdown-menu"> <li><a href="page1.php">Page1</a></li> <li><a href="page2.php">Page2</a></li> <li><a href="page3.php">Page3</a></li> </ul></li> <li><a href="blog.php">Blog</a></li> <li><a href="contact-us.php">Contact Us</a></li> </ul>,图片为like this -
@edvinas.me 我已经在 Chrome 中尝试过 html 主题。有一类
dropdown open在单击具有子页面的第一级菜单时被激活。像<li class="dropdown">被转换成<li class="dropdown open">同时点击有孩子的父菜单。
标签: javascript php dynamic menu