Tree/AlLoadLevel
Материал из PhpWiki.
Деревья в базах данных => Списки смежности => Загрузка дерева => Загрузка одного уровня
Как загрузить как загрузить один уровень?
popoff
Представленный здесь скрипт возвращает массив, описанный здесь: Внутреннее представление деревьев в программах
<?php function tree_list_load_level($k_parent) { // $k_parent - Идентификатор родительского элемента, для которого следует // загрузить один уровень // Возвращает ложь в случае ошибки if(empty($k_parent)||!is_numeric($k_parent)) return false; $r=mysql_query(" select t_catalog_tree.k_item, #идентификатор элемента t_catalog_tree.k_parent, #идентификатор родительского элемента # элементы верхнего уровня содержат здесь 0 t_catalog.s_name #название from t_catalog, #данные t_catalog_tree #дерево where t_catalog_tree.k_parent=".$k_parent." and t_catalog.k_item=t_catalog_tree.k_item order by t_catalog.s_name"); if(!$r) return false; $a_tree=array(); for($i=0;$i<mysql_num_rows($r);$i++) { $f=mysql_fetch_assoc($r); $a_tree[]=array( 'k_item' => $f['k_item'], 's_name' => $f['s_name'], 'a_tree' => array() ); } return $a_tree; } ?>
Смотрите так же: Загрузка одного уровня для дерева, заданного вложенными множествами Вывод дерева