说休息还贴这么长的代码 -_-!看完了代码,得出如下结论
1. 这是一个使用树形结构显示的简易论坛,能显示贴子列表,添加主题.
2. 根据表结构得出数据结构使用了"插入排序法",极有可能是中值排序,ordernum为排序字段
3. Tree_control具有如下属性和方法 
   var $default_sql = array(); //保存SQL语句的数组
   var $mode; //关联数组的索引,不太清楚用途.
   var $tbl_name;//保存表名
   var $fields; //保存字段值的对象
   var $eof = false; //记录指针标识
   
   function query( $sql ) //查询数据库函数
   {
      $res = mysql_query( $sql );
      $this->next();
      
   }
   function next()    //取出下一条记录
   {
      if( $this->$fields = mysql_fetch_object($res))
      {
           $this->eof = true;
      }
      else
      {
           $this->eof    = false;
           $this->fields = null;
      }
   }
    
   function set_deep($str, $deep) //设置标题缩时
   {
      
   }

解决方案 »

  1.   

    不小心点了回复.........-_-!还没说完
    function set_deep($str, $deep) //设置标题缩时
    {
        return str_repeat("  ", $deep) . $str;
          
    }function Add( $root_id, $data )  //添加主题, $root_id好像没用到,可能是错的
    {
       $sql = "SELECT @max_num:=MAX(ordernum)
               FROM  $this->tbl_name";
       $sql = "INSERT INTO $this->tbl_name SET ordernum=@max_num*2," . $data;
              
       return $this->query( $sql );
    }function AddChild( $parent_id, $data )
    {
       $sql = "SELECT root_id, ordernum,=deep 
               FROM $this->tbl_name
               WHERE id>=$parent_id
               LIMIT 2";
       $this->query( $sql );
       $root_id = $this->fields->root_id;
       $ordernum= $this->fields->ordernum;
       $this->next();
       $ordernum= ( $this->fields->ordernum + $ordernum )/2
       $sql = "INSERT INTO $this->tbl_name 
               SET root_id=$root_id,ordernum=$ordernum,";
       $sql .= $data;
       $this->query( $sql );
    }瞎猜的!!