Официальный сайт студ.городка НГТУ
Программирование и БД » [PHP, Smarty] Создание подпунктов меню 

#1  23.04.08 03:50

[PHP, Smarty] Создание подпунктов меню

Из БД извлекаются данные, получается такая структура.

Код::

Array
(
    [1] => Array
        (
            [link] => link1
            [title] => Ссылка 1
            [childNodes] => Array
                (
                    [2] => Array
                        (
                            [link] => link2
                            [title] => Ссылка 2
                            [childNodes] => Array
                                (
                                )
                        )
                    [4] => Array
                        (
                            [link] => link4
                            [title] => Ссылка 4
                            [childNodes] => Array
                                (
                                )
                        )
                )
        )

    [3] => Array
        (
            [link] => link3
            [title] => Ссылка 3
            [childNodes] => Array
                (
                )
        )

Как в Smarty сделать, чтобы на выходе получилось
-Ссылка 1
     -Ссылка 2
     -Ссылка 4
-Ссылка 3

Мой код. Естественно не работает

Код: php:

{section name=iter loop=$menu}
        {if $menu[iter].childNodes[0]}        
    	{section name=iter2 loop=$menu[iter2].childNodes}
 <a href="{$menu[iter2].childNodes.link}">Подпункт {$menu[iter2].childNodes.title}</a>
        {/section}
        {else}
        <a href="{$menu[iter].link}" title="{$menu[iter].label}">{$menu[iter].title}</a>
     {/if}
{/section}

Offline

#2  23.04.08 11:05

Re: [PHP, Smarty] Создание подпунктов меню

Код: php:

$smarty->assign("tree", $menu);


tree.tpl

Код::

{if $tree}
<ul>
{foreach from=$tree key=key item=item}
	<li>
	<a href="{$item.url}" title="{$item.title}">{$item.title}</a> {include file="tree.tpl" tree=$item.childNodes}
	</li>
{/foreach}
</ul>
{/if}

потом при помощи css натянуть стили

Исправлено A-Lex (23.04.08 11:06)

Offline

Программирование и БД » [PHP, Smarty] Создание подпунктов меню 

ФутЕр:)

© Hostel Web Group, 2002-2025.   Сообщить об ошибке

Сгенерировано за 0.047 сек.
Выполнено 14 запросов.