在没有硬编码的情况下为jsTree使用自定义表

时间:2012-05-01 05:41:59

标签: php jstree

使用jsTree + PHP,我想从两个不同的数据库表中加载两个不同的树,具体取决于登录用户的用户类型。

我将代码追溯到“class.tree.php”文件,

class json_tree extends _tree_struct {  
function __construct($table = 'tree', $fields = array(), $add_fields = array("title" => "title", "type" => "type")) {
parent::__construct($table, $fields);
    $this->fields = array_merge($this->fields, $add_fields);
    $this->add_fields = $add_fields;
}

$ table ='tree'是硬编码的。我尝试删除它(所以只是$ table),并将'tree'传递给

$jstree = new json_tree('tree');

但这不起作用。任何想法/帮助将不胜感激!

1 个答案:

答案 0 :(得分:0)

对于那些好奇的人,我完全忘记了server.php还包括一个jstree(我也在我的左侧菜单中启动了它)。对于那些感兴趣或需要基于条件的树的人,我所做的是:

  • 删除了__construct中的$ table ='tree',如上所述 function __construct($table, $fields = array(), $add_fields = array("title" => "title", "type" => "type"))
  • 在config.php(session_start())
  • 中添加了一个会话
  • 我有一个登录,这让我得到了条件
  • 在server.php中,我做了以下操作 if($_SESSION['condition'] == 1) { $jstree = new json_tree("tree");} else { $jstree = new json_tree("tree_users");}

我希望这有助于某人!