加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

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;
}

递归菜单的数据库:

enter image description here

结果是没有使用div元素(id = wrapper,id = navmenu)运行良好,请参阅:

enter image description here

当我放回div元素(id = wrapper,id = navmenu)时,它不会发生我想要的:

enter image description here

我想:当我在“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;
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读