繁体   English   中英

创建动态PHP / HTML类别树

[英]Create dynamic PHP / HTML category tree

我已经想出了如何使用ul> li结构来获取每个父/子,但是现在我陷入了困境,子类ul需要一个“下拉列表”类,但无法弄清楚。

我的目标是使用Foundation nav标记创建无限的动态ul菜单。

PHP

function fetchCategoryTreeList($parent = 0, $user_tree_array = '') {

$isParent = '';

if (!is_array($user_tree_array))
$user_tree_array = array();

$sql = "SELECT id,name,parent FROM `categories` WHERE 1 AND parent=$parent ORDER BY id ASC" or die(mysql_error);

if (database_querySelect($sql,$rows)) {

    $user_tree_array[] = "<ul>";

        foreach ($rows as $row) {

            if ($row["parent"] == "0") { $isParent = "has-dropdown"; } 

            $user_tree_array[] = "<li class='".$isParent."'>". $row["name"]. "</li>";

            $user_tree_array = fetchCategoryTreeList($row["id"], $user_tree_array);

        }

    $user_tree_array[] = "</ul>";   

}

  return $user_tree_array;

显示猫的代码

 <?php
  $res = fetchCategoryTreeList();
    foreach ($res as $r) {
      echo $r;
    }
  ?>

产量

<ul>
  <li class='has-dropdown'>Golf Equipment</li>

    <ul>
        <li class=''>Manual Golf Trolleys</li>
        <li class=''>Electric Golf Trolleys</li>
    </ul>

  <li class='has-dropdown'>Weight Training</li>

    <ul>
        <li class=''>Weight Benches</li>
        <li class=''>Weights</li>
    </ul>
  </li>
</ul>

我可以帮忙..我不知道(需要一个班级“下拉菜单”)...您可以给主班级一个班级吗

$user_tree_array[] = "<ul  class='main_ul'>";

然后可以在css和jquery中使用选择器

 .main_ul .has-dropdown ul {
}

功能:

<?php

    function fetchCategoryTreeList( $parent = 0, $user_tree_array = "" ) {

        if ( ! is_array($user_tree_array))
            $user_tree_array = array();


        $sql  = "SELECT id,name,parent ";
        $sql .= "FROM `categories` ";
        $sql .= "WHERE 1 AND parent = {$parent} ";
        $sql .= "ORDER BY id ASC";

        if ( database_querySelect( $sql, $rows) )
        {

            foreach ( $rows as $row ) 
            {

                $user_tree_array[] = "<li class='' >{$row["name"]}</li>";

                if ( $parent != $row["id"] )
                {

                    $user_tree_array[] = "<ul>";

                    $user_tree_array = fetchCategoryTreeList( $connection, $row["id"], $user_tree_array );

                    $user_tree_array[] = "</ul>";

                }
                else
                { 

                    $user_tree_array = fetchCategoryTreeList( $row["id"], $user_tree_array );               

                }

            }

        }

        return $user_tree_array;

    }

?>

呼叫:

<?php

    $arrays = fetchCategoryTreeList();

    foreach ( $arrays as $list) 
    {
        echo $list;
    }

?> 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM