Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [smarty] - bloki menu
kamiox
post
Post #1





Grupa: Zarejestrowani
Postów: 47
Pomógł: 0
Dołączył: 13.10.2003
Skąd: Małopolska

Ostrzeżenie: (0%)
-----


[php:1:0428340793]<?php
function wyswietl_menu($posx) {

$sql = "select * FROM $_SESSION[db_prefix]menu WHERE posx='$posx' AND status=1 ORDER BY posy";
$dane = $db -> Execute($sql);
while (!$dane->EOF) {
$dane->fields[2] = '?>'.$dane->fields[2].'<?'; /* dane znajdujące się pomiędzy <? a ?> */
$dane->fields[2] = eval(''.$dane->fields[2].''); // są wykonywane jako kod php
$dane->MoveNext();
} // while
return $dane;
} // function wyswietl_menu


$smarty -> assign("left_menu", wyswietl_menu('left'));
$smarty -> assign("right_menu", wyswietl_menu('right'))
?>[/php:1:0428340793]

Mam taki problem ze funkcja się wykonuje przed wygenerowaniem strony przez smarty. Jak mam przekazać do smarty wynik funkcji zeby smarty to wyswietlilo w miejscu gdzie mam w pliku .tpl taki kod:



[php:1:0428340793]<?php
{section name=i loop=$left_menu}
{$left_menu[i].text}
{/section}
?>[/php:1:0428340793]


On opowiada za wyswietlenie bloku menu.
Pewnie to jest lamerskie pytanie ale to mój 3 dzień ze smarty i adodb. A niestety nie mogłem nic znaleźć na forum na ten temat (IMG:http://forum.php.pl/style_emoticons/default/sad.gif)

Bardzo prosze o pomoc co mam z tym zrobić.

Albo jakiś inny lepszy sposób na umieszczenie dynamicznych bloków menu.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Cudi
post
Post #2


Administrator planeta/IRC


Grupa: Przyjaciele php.pl
Postów: 385
Pomógł: 0
Dołączył: 19.04.2003
Skąd: Zabrze

Ostrzeżenie: (0%)
-----


Ja pokazałem jak to robie, sposób z buforowaniem wyjścia powinien Cie satysfakcjonować. Jest jeszcze inne wyjście, moim zdaniem lepsze. Dajemy uzytkownikowi dwie mozliwości, albo wstukuje sobie normalnie zawartość menu, ale podaje ścieżke do pliku który będzie odpowiadał za jego wygenerowanie. Pliczek ten może nawet korzystać z parsera szablonów, my musimy tylko ten plik zaincludować. O ile dobrze pamiętam takie rozwiązanie było wykorzystane w php-nuke.
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 4.10.2025 - 13:50