Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Bloki w Smarty
Forum PHP.pl > Forum > Przedszkole
camelx
Czy w systemie Smarty istnieje cos takiego jak bloki (np. takie jak w phpBB)questionmark.gif

Chcę wyświetlić szablon smarty w pętli WHILE, ale wtedy cały szablon mi się kilka razy. Myslę, że bloki by w tym pomogły...
Vengeance
moze chodzi ci o
{foreach}
camelx
Hmmm... Wiem już mniej więcej o co chodzi, ale czy mógł bys dać jakiś mały przykładzik wykorzystania tego {foreach} questionmark.gif
akubiczek
W manualu są fajne przykłady. Oprócz foreach zobacz także section.
camelx
czytałem opisy tego foreach (manual też trochę) ale nie umiem tego wykorzytsć na swojej stronie.

Czy mógł by mi ktoś napisać jak wyświetlić dane z WHILE w tabelce na stronie ?
.dragonfly
Najprosciej mozesz zrobic tak

  1. <?php
  2. $smarty->assign( &#092;"news\", $newsArr );
  3. ?>


oraz

  1. {section name=i loop=$news}
  2. <font face=verdana size=2>{$news[i].title}<br></font>
  3. <font face=verdana size=2>{$news[i].body}</font><br><BR>
  4. {/section}
camelx
Co oznacza {$news[i].title} {$news[i].body} ?

Zrobiłem coś takiego:
  1. <?php
  2. $smarty->assign( &#092;"news\", $row['news_title'] ); //to jest wewnątrz WHILE
  3. ?>
oraz
  1. {section name=i loop=$news}
  2. <font face=verdana size=2>{$news[i].title}<br>
  3. </font>
  4. <font face=verdana size=2>{$news[i].body}</font><br>
  5. <BR>
  6. {/section}


i nie działa... (nie ma błędów, ale nic się nie wyświetla).

Rozumiem, że $smarty = new Smarty; i $smarty->display('index_body.html'); NIE muszą być wewnątrz WHILE.
JimX
Spróbuje napisać prostszy przykład...

  1. <?php
  2.  
  3. ...
  4. $x = mysql_query(mysql_fetch_assoc(&#092;"SELECT * FROM tabela ORDER BY ...\"));
  5.  
  6. $smarty->assign('dane', $x);
  7. $smarty->display('szablon.tpl');
  8.  
  9. ?>


a w pliku szablon.tpl:

Kod
{section name=i loop=$dane}
Tytul: {$dane[i].tytul} <BR>
Tresc: {$dane[i].tresc} <BR>
{/section}


A te: {$dane[i].tytul} to taki sposób wyswietlania, gdzie po kropce podajesz nazwe kolumny w danej tabeli.

Pozdro
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.