|
|
|
|
function ShowCat($ParentID, $lvl) {
global $DB;
$lvl++;
$result = $DB->query("SELECT * FROM news_cat WHERE pid=".$ParentID." ORDER BY name",$db);
if ($DB->get_num_rows($result) > 0)
{
echo("<UL>");
while ( $row = $DB->fetch_array($result) )
{
$ID1 = $row["id"];
echo("\n<LI>");
echo($row["name"] . "</a>");
ShowCat($ID1, $lvl);
$lvl--;
}
echo("</UL>\n");
}
}
|
Здравствуйте! Может у кого есть опыт как передать рекурсивную функцию в Smarty. если использовать буферизацию и отправить все в переменную - не подходит. нужно чтобы из шаблона можно было устанавливать классы к списку, ставить нумерованный или точками и т.д. | |
|
|
|
|
|
|
|
для: enshteyns
(14.06.2008 в 17:23)
| | Наверное использовать объекты. | |
|
|
|
|
|
|
|
для: sim5
(14.06.2008 в 17:49)
| | Спасибо за совет! :) | |
|
|
|
|
|
|
|
для: sim5
(14.06.2008 в 17:49)
| | Ещё такой вопрос...
Имею шаблон:
{if isset($smarty.get.page) && $smarty.get.page == '$mod'}
{include file='$mod.tpl'}
{else}
{include file='$mod.tpl'}
{/if}
|
Т.е. присвоена в php файле переменной {$mod} значение news.
Но выскакивает такая вот ошибка:
Warning: Smarty error: unable to read resource: "$mod.tpl" in L:\home\dvig\www\inc\classes\Smarty\Smarty.class.php on line 1092
|
т.е. переменная не обрабатывается в инклуде. ставил и $mod и {$mod}
Можно ли как-то решить иначе? Желательно без конфиг файла. потому что значение будет из базы данных подставляться впоследствии... | |
|
|
|
|
|
|
|
для: enshteyns
(15.06.2008 в 00:31)
| | Нашел решение ))) Может кому пригодится...
Вообщем путь до файла нужно заключать в двойные кавычки ", а если в ординарной - то не пашет...
Пример:
{include file="$mod.tpl"}
|
P.S. Это если вы решили включить свою переменную. со статичным названием - всё оки | |
|
|
|