[Закрыть]
 
popoff.donetsk.ua
Быть свободным - это ничто; стать свободным - это все. /К. Бёрне/
Начало | Новости | Статьи | Форум | Опросы | Карта сайта | Обо мне
popoff.donetsk.ua - Форум - Программирование на PHP - Генерация динамического дерева

Генерация динамического дерева

форумы popoff.donetsk.ua
Страницы: [1]
<< Новый  |  Старый >>  |  Ответ не возможен

Внимание! Этот топик устарел. Пожалуйста, создайте новый топик, чтобы задать интересующий Вас вопрос.

Автор Сообщение
traktor
Александр
Фев, 2007
Сообщений: 2
traktor url://forum.message:1840
Генерация динамического дерева

Здравствуйте. Очень хорошая и полезная статья
http://phpclub.ru/faq/wakka.php?wakka=Tree/DemoPrintDynamic&v=17kl
Уважуха Вам!!!
У меня такой вопрос: Я пытаюсь заполнить массив из БД. Для этого испоьзовал функцию

// формирование массива из БД
function getTree($id=0) {
    // начинаем ветку - массив узлов
    $node = array();
    // берём все узлы на родительской ветке
    $r = mysql_query('select * from table where p_id='.$id.' order by id');
    while ($row=mysql_fetch_assoc($r)) {
        // добавляем узел на
        $node[] = array('id'=>$row['id'],'text'=>$row['text'],'subs'=>0);
    }
    // прибераемся
    mysql_free_result($r);
    // есть узлы на текущей ветке
    if (count($node)) {
        // для всех узлов текущей ветки
        foreach($node as $k=>$v) {
            // строим дочерние ветки
            $node[$k]['subs'] = getTree($v['id']);
        }
        // возвращаем узел
        return $node;
    }
    // если нет узлов на текущей ветке - так и говорим
    return $node;
}
(http://www.sql.ru/forum/actualthread.aspx?tid=373739)

Этот скрипт не очень подходит. Выполняется много селектов из БД, равное кол-ву записей в таблице, при каждом раскрытии ветви.

Можете подсказать более лучший способ формирования массива из БД?

С уважением!

popoff
Yuri
Июл, 2004
Сообщений: 942
popoff url://forum.message:1841

Функции для формирования массива из дерева, которое хранится в базе данных в виде списков смежностей, описаны здесь:
http://phpclub.ru/faq/Tree/AlLoad

________________________________
Если не будет деревьев — нам нечем будет дышать, если вода загрязнится — нам нечего будет пить.
traktor
Александр
Фев, 2007
Сообщений: 2
traktor url://forum.message:1842

Функции для формирования массива из дерева, которое хранится в базе данных в виде списков смежностей, описаны здесь:
http://phpclub.ru/faq/Tree/AlLoad

popoffфорумы popoff.donetsk.ua



Спасибо Просто класс

Внимание! Этот топик устарел. Пожалуйста, создайте новый топик, чтобы задать интересующий Вас вопрос.

Страницы: [1]
<< Новый  |  Старый >>  |  Ответ не возможен
Вход
Поиск[?]:
Обмен электронных валют
money.dn.ua