+-------+------+-----------+------------+
|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--
但我希望按顺序排在上面,而不是这个, 我已经阅读了教程,但他们都在右侧分支,似乎没有触及我的类型
任何好例子的链接,我都会很高兴
对我的问题的任何见解也会帮助我很多
我似乎已经为我找到了解决方案 提前谢谢。
答案 0 :(得分:0)
我建议使用某种插件,比如jquery插件,可以为你构建树,这里有几个插件。
http://jquery.bassistance.de/treeview/demo/
http://www.jqwidgets.com/jquery-widgets-demo/#demos/jqxtree/treebindingtojson.htm