[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Задача для дерева смежных вершин
major28
Здравствуйте дорогие программисты!
Я столкнулся со следующей задачей:

Есть дерево которое хранится в mysql по алгоритму списка смежных вершин


id | parent_id | name | value
1 0 test1 10
2 1
test2 15
3 2
test3 25
4 2
test4 35


* parent_id указатель на родителя элемента

Нужно вывести данные в виде дерева и посчитать для каждого элемента сумму значений поля value всех его дочерних элементов. С выводом я справился с помощью рекурсии, а вот как посчитать сумму значений поля value всех дочерних элементов я не смог. Может кто то из вас мне подскажет как это реализовать?


$html = '';
seeElements(0);

function seeElements($parent = 0)
{
global $data;
global $html;

foreach($data as $val)
{
if($val['parent_id'] == $parent)
{
$html .= "<ol>";

$html .= "<li>".$val['name']. "</li>";

seeElements($val['id']);

$html .= "</ol>";


}
}
}

echo $html;

*
в $data хранится массив с данными из таблицы mysql
пример:
$data = array(
array('id'=>,'parent_id'=>,'name'=>,'value'=>,),
array('id'=>,'parent_id'=>,'name'=>,'value'=>,)
....
);


Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.