我所能想到的
数据库表
    字段      ID     节点       父节点              子节点
记录      自动增长           根据树定义只有一个父亲   可以有多个
                                                       |
                                                       |
                                                     用下面的方式实现
                          
这个字段的存储样式为 child1:child2:child3:……
 founction chart($result)
{
 ……
$query="select * from ……";
$result=mysql_query($query,[$link]);
while (list ($child)=mysql_fetch_field($result))
{
// 注意这里
 if ($child=null)//是叶子节点
 {
 echo "返回这个节点的内容";//具体的如果你想画图的话在这里写入你的代码
 }
else
{
 $array=split($child,":")//字段中的冒号就是标记的分割符号,那么这样可以得到一个动态的数组;
for ($i=0; $i++;$i<count($array))
{
 chart ($array[$i]);//调用这个函数
   ……
}
}
基本思路是这样
具体的代码你自己写吧
浅妄薄见,望与斟酌

解决方案 »

  1.   

    其中split函数我记的不太清楚了
    好象是string_split();可以参考一下手册。在字符串部分。如果你的信息很复杂也可以用正则表达式来处理。具体的看手册或者到www.php.net的FAQ看看。推荐后者因为那里有很多网友使用本函数的心得很难得
    浅妄薄见,望与斟酌
      

  2.   

    嘿嘿,用 msdn( http://msdn.microsoft.com ) 上的xml树技术可以轻松解决我最近的工程也用到了这个技术,,不过要自己研究一下啊。
      

  3.   

    我用xmlhttp做了一個不限層次的樹。每層都必須用xmlhttp動態提取數據,雖然這個過程必須提交頁面,但是在刷新或者地址欄裏面都看不出來的說實話,只有三層的話,可以一次性全部取出來。不用動態
      

  4.   

    把所有的数据以 XML 格式放在数据岛里,然后设好了动作,一旦选择 (click...) 就让 JSCRIPT 去读,然后输出到另一处就成了。
      

  5.   

    收藏!
    不过采用XML的确是个简单的方法!