Русскоязычный форум, посвященный фреймворку Kohana
http://forum.kohanaframework.su/

Дерево категорий
http://forum.kohanaframework.su/viewtopic.php?f=33&t=355
Страница 2 из 2

Автор:  Sergey [ 10 окт 2012, 20:35 ]
Заголовок сообщения:  Re: Дерево категорий

А я и не смотрел :) Из головы вылетело. До сих пор не решили проблему?

Автор:  borodatych [ 12 окт 2012, 09:59 ]
Заголовок сообщения:  Re: Дерево категорий

Доброго времени суток.
До конца не решена. Но нашел такой выход:
Код:
function getCats($res){
    $levels = array();
    $tree = array();
    $cur = array();
    foreach($res as $rows){
       
        $cur = &$levels[$rows['term_id']];
        $cur['parent'] = $rows['parent'];
        $cur['name'] = $rows['name'];
       
        if($rows['parent'] == 0){
            $tree[$rows['term_id']] = &$cur;
        }
        else{
            $levels[$rows['parent']]['children'][$rows['term_id']] = &$cur;
        }
       
    }
    return $tree;
}

Код:
function getTree($arr,$l=1){
    $out = '';
    $out .= '<ul>';
    foreach($arr as $k=>$v){
        $out .= '<div style="margin-left:"'.($l*25).'"px;">'.$v['name'].'</div>';
        if(!empty($v['children'])){
            $l = $l + 1;
            $out .= getTree($v['children'],$l);
            $l = $l - 1;
        }
    }
    $out .= '</ul>';
    return $out;
}
$cats = getCats($cats_p);
echo getTree($cats);

Порядок получается что надо, но не могу добиться отступов.
На команду mysql_fetch_assoc у меня Kohana ругался.
Было заменено на forech, не знаю верно ли только?
С уважением, Роман.

Автор:  borodatych [ 20 окт 2012, 19:28 ]
Заголовок сообщения:  Re: Дерево категорий

Вдруг кто копи-пастнуть решил и не вышло.
Пример выше поправлен уже.
Заменил
Код:
$out .= getTree($v['children']);

на
Код:
$out .= getTree($v['children'],$l);

Не внимательность мать ее..

Автор:  borodatych [ 22 окт 2012, 06:14 ]
Заголовок сообщения:  Re: Дерево категорий

Доброго времени суток.
Дерево то построилось, но я не могу его корректно поместить в select.
Подскажите в какую сторону двигаться.
С уважением, Роман.

Автор:  Sergey [ 22 окт 2012, 06:17 ]
Заголовок сообщения:  Re: Дерево категорий

форичем. для заголовков подкатегорий добавляйте option который нельзя выбрать а в css дайте им стиль какой нибудь отличающийся

Автор:  Zorato [ 23 окт 2012, 01:53 ]
Заголовок сообщения:  Re: Дерево категорий

На днях планирую опубликовать 2 своих модуля: генератор меделей и строитель деревьев.
Постараюсь обильно снабдить комментариями и добавть побольше примеров использования.

Страница 2 из 2 Часовой пояс: UTC + 4 часа [ Летнее время ]
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/