[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: помогите с выводом многоуровневого меню
make.kz
Доброй ночи, утра или дня!

Пытаюсь вывести многоуровневое меню в PHP+MySQL+SMARTY.

Таблица в базе выглядит так

CREATE TABLE `tb_menu` (
`id` int(11) NOT NULL auto_increment,
`name` text NOT NULL,
`text` text NOT NULL,
`par` int(11) NOT NULL,
`pos` int(11) NOT NULL,
`status` tinyint(4) default NULL,
PRIMARY KEY (`id`)
)
ENGINE=MyISAM DEFAULT CHARSET=UTF8 AUTO_INCREMENT=17 ;


---------------------------------------------------------------------
| id | name | text | par (parent_id) | pos (position) | status |
---------------------------------------------------------------------
| 1 | menu1| text1| 0 | 1 | 1 |
----------------------------------------------------------------------
| 2 | sub_m1| text| 1 | 1 | 1 |
----------------------------------------------------------------------
| 3 | sub_m3| text| 2 | 1 | 1 |
----------------------------------------------------------------------


Как мне используя php и smarty вывести многоуровневое меню в таком виде?


<ul>
<li><a
href=''>menu1</a>
<ul>
<li> <a
href=''>sub_m1</a>
<ul>
<li><a
href=''>sub_m3</a></li>
</ul>
</li>
</ul>
</li>
</ul>



Очень срочно надо!
Заранее спасибо.
make.kz
со стороны php сделал функцию


function show_cat($par,$old){
global $dbpf,$GLOBAL_TABLE, $pages, $smarty,$lev; $out = ''; $lev++;
$sql = "SELECT * FROM tb_menu WHERE par=".$par." ORDER BY pos";
$qurrent = mysql_query($sql); $kol = mysql_num_rows($qurrent);
if($qurrent && $kol){
while ($qur = mysql_fetch_assoc($qurrent)){
for($i=2;$i<=$lev;$i++) {$out .= $lev;}
if ($qur['par'] == 0){ $bg_c='#36f';}
else { $bg_c='#6cf'; }
$pages[] = array('id'=>$qur['id'], 'lev'=>$lev, 'out'=>$out,'name'=>$qur['name'], 'text'=>$qur['text'], 'par'=>$qur['par'], 'pos'=>$qur['pos'], 'status'=>$qur['status'], 'bg_c'=>$bg_c);
$out = '';
show_cat($qur['id'],$qur['par']);
$lev--;

}
}

$smarty->assign('pages', $pages);
}

show_cat(0,0);


Как ее теперь в SMARTY вывести в TPL файле?
Быстрый ответ:

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