PHP在下拉列表中显示菜单树
发布时间:2020-12-13 22:27:25 所属栏目:PHP教程 来源:网络整理
导读:菜单树的功能: function category_tree($parent_id){ $sql = "SELECT * FROM menu WHERE parent_id ='".$parent_id."'"; $result = $conn-query($sql); echo "div id="wrapper" div id="navmenu""; while($row = mysqli_fetch_object($result)): $i = 0
菜单树的功能:
function category_tree($parent_id) { $sql = "SELECT * FROM menu WHERE parent_id ='".$parent_id."'"; $result = $conn->query($sql); echo "<div id="wrapper"> <div id="navmenu">"; while($row = mysqli_fetch_object($result)): $i = 0; if ($i == 0) echo '<ul>'; echo '<li>' . $row->name; category_tree($row->id); echo '</li>'; $i++; if ($i > 0) echo '</ul>'; endwhile; echo "</div> </div>"; } CSS文件: #navmenu { margin: 0; padding: 0; } #navmenu ul{ margin: 0; padding: 0; height:30px; } #navmenu li{ margin: 0; padding: 0; list-style: none; float: left; position: relative; background:#09F; } #navmenu ul li a{ text-align:center; text-decoration:none; font-family:Arial,Helvetica,sans-serif; height:30px; width:150px; display:block; color:#000066; padding-top:7px; } #navmenu ul ul{ position:absolute; visibility: hidden; top:30px; } #navmenu ul li:hover ul { visibility:visible; } #navmenu li:hover { background:#3366CC; } #navmenu ul li:hover ul li a:hover{ background:#03C; color:#FFFFFF; } 递归菜单的数据库: 结果是没有使用div元素(id = wrapper,id = navmenu)运行良好,请参阅: 当我放回div元素(id = wrapper,id = navmenu)时,它不会发生我想要的: 我想:当我在“Felso菜单”上的光标显示下拉菜单(Sport,Ekszer,Egyeb)时,如果我在“Foci”上的光标显示下拉菜单(Mezek,Egyeb,Utok,Labdak)等…想法我该怎么做,或者如何修复我的代码? 解决方法
好.我解决了这个问题,这是我的代码:
function get_menu_tree($parent_id) { global $conn; $menu = ""; $sqlquery = " SELECT * FROM menu where parent_id='" .$parent_id . "' "; $res=mysqli_query($conn,$sqlquery); while($row=mysqli_fetch_array($res,MYSQLI_ASSOC)) { $menu .="<li><a href='".$row['link']."'>".$row['name']."</a>"; $menu .= "<ul>".get_menu_tree($row['id'])."</ul>"; //call recursively $menu .= "</li>"; } return $menu; } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |