0
+-------+------+-----------+------------+
|user_id| name | parent_id |grandparentID
+----+--------+-----------+-------------+
|  1 | one    |      NULL |     NULL   |
|  2 | two    |         1 |     NULL   |
|  3 | three  |         1 |      1     |
|  4 | four   |         2 |      1     |
|  5 | five   |         2 |      2     |
|  6 | six    |         2 |      2     |
|  7 | seven  |         2 |      2     |
|  8 | eight  |         3 |      3     |
|  9 | nine   |         3 |      2     |
| 10 | ten    |         3 |      1     |
| 11 | eleven |         3 |      2     |
+-------------+-----------+------------+

我想创建一个具有以下数据库模式的树结构如下所示

                                 One
                                  |
       two______________three______________four______________five______________Six
       |                |                  |                  |                 |
    n1 n2 n3 n4 n5   t1 t2 t3 t4 t5   h1 h2 h3 h4 h4    a1 a2 a3 a4 a5   s1 s2 s3 s4 s5

我写了以下代码

<?php   
    function display_tree() {  
        $result = $this->qry("SELECT * FROM users WHERE Parent='?' or Parent ='?';" ,
        'in(select id from user_id from users where Parent = "'.$_SESSION['id'].'")', $_SESSION['id']); 

        echo '<div align="center">'.$_SESSION['name'].'<br></div>';
        echo '<div align="center">|</div>';
        echo '<div align="center">';
        while( $row=mysql_fetch_assoc($result)){
            echo "___".$row['name'].$row['user_id'].'';
        };
        $result1 = $this->qry("SELECT * FROM users where grandParent='".$_SESSION['id']."'");
        echo '<br>|<br>';
        while( $row1 =mysql_fetch_assoc($result1)){ 
            echo "--".$row1['name'];  
        }
        echo '</div>';
    }
?>

这是它显示的内容

             one
               |
    ___two___three
               |
  --four--five--six--seven--eight--

但我希望按上面的顺序排列,而不是这个,我已经阅读了教程,但它们都停留在右左分支上,似乎没有一个涉及我的类型

任何指向好例子的链接,我会很高兴

对我的问题的任何见解也会对我有很大帮助

我似乎已经为我解决了问题提前谢谢。

4

1 回答 1

0

我建议使用某种插件,例如 jquery 插件,它可以为您构建树,这里有几个插件。

http://jquery.bassistance.de/treeview/demo/

http://www.jqwidgets.com/jquery-widgets-demo/#demos/jqxtree/treebindingtojson.htm

https://github.com/pioz/jquery-tree

于 2012-06-10T00:02:17.540 回答