![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 13 Pomógł: 0 Dołączył: 6.11.2003 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
Na początku zaznaczę, że zapoznałęm się z treścią tego: http://forum.php.pl/viewtopic.php?t=6514.
Czy ktoś może prosto i bez odsyłania do dokumentacji Smarty wytłumaczyć jak wyświetlić wewnątrz szablonu Smarty dane z pętli? Mam następujący przykład: [php:1:0c2288eb18]<?php $cf = file(news.txt); $count = count ($cf); for ($t=$count-1; $t>=0; $t--) { $news = explode ("$separator", $cf[$t]); echo ("$news[0], $news[1], $news[2], $news[3], $news[4]"); } ?>[/php:1:0c2288eb18] Co zrobić żeby te dane wstawić do szablonu Smarty? W jaki sposób je tam przekazać i jak je tam obrobić za pomocą Smarty? Pozdrawiam i z góry dzięki. |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 50 Pomógł: 0 Dołączył: 15.02.2003 Skąd: Ziemia Ostrzeżenie: (0%) ![]() ![]() |
[php:1:02040f0c80]<?php
$smarty->assign(array( News => $news )); ?>[/php:1:02040f0c80] a w templecie Kod {section name=News loop=$News}
{$News[News]} <br> {/section} -------------------- Warsztat: IIS 6.0 | PHP 4.3.10 && 5.0.3 | MySQL 4.1.9 | Smarty 2.6.7 | PEAR | EditPlus 2 Produkcja: FlipTiM |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 13 Pomógł: 0 Dołączył: 6.11.2003 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
Dzięki stach, ale nie do koćna o to mi chodziło. Mój problem polega na tym, że po wyświetleniu jednego wpisu, na które składają się dane z podanej przykładowo przez Ciebie tablicy $news, chcę żeby smarty wyświetliło następny wpis z pętli for, tzn. z tablicy "wyższego rzędu" $cf.
Teraz wywala mi błąd: Cytat Fatal error: Cannot redeclare class smarty in /home/tahat/public_html/work/Smarty.class.php on line 74
|
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 50 Pomógł: 0 Dołączył: 15.02.2003 Skąd: Ziemia Ostrzeżenie: (0%) ![]() ![]() |
Jesli dobrze Cie zrozumialem i dobrze kapuje blad jaki wywala Ci smarty to zle umiesciles assign-a smartow... Powinno to wygladac tak:
[php:1:c28d9793c4]<?php define('SMARTY_DIR','../core/Smarty/'); define('TEMPLET_DIR','../templety/'); include_once(SMARTY_DIR.'Smarty.class.php'); $tpl = new Smarty; $tpl->compile_check = true; $tpl->template_dir = $_home_path.TEMPLET_DIR; $tpl->compile_dir = $_home_path.TEMPLET_DIR.'/templety_c/'; $tpl->config_dir = $_home_path.TEMPLET_DIR.'/configs/'; $tpl->cache_dir = $_home_path.TEMPLET_DIR.'/cache/'; $cf = file('news.txt'); $count = count ($cf); for ($t=$count-1; $t>=0; $t--) { $news[] = explode ("|", $cf[$t]); } $tpl->assign(array( News => $news )); $tpl->display('ntest.tpl'); ?>[/php:1:c28d9793c4] a Templet ntest.tpl w takim razie powinien wygladac jakos tak: [xml:1:c28d9793c4] {section name=News loop=$News} {section name=Newsin loop=$News[News]} {$News[News][Newsin]} <br> {/section} {/section} [/xml:1:c28d9793c4] Chyba chodzi Ci o to ![]() -------------------- Warsztat: IIS 6.0 | PHP 4.3.10 && 5.0.3 | MySQL 4.1.9 | Smarty 2.6.7 | PEAR | EditPlus 2 Produkcja: FlipTiM |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 6 Pomógł: 0 Dołączył: 15.05.2003 Ostrzeżenie: (0%) ![]() ![]() |
Jak wyświetlić informacje z bazy sql tak zeby byly wyswietlone jedna pod druga w ramce (z uzyciem smartow)?
|
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 12 Pomógł: 0 Dołączył: 2.01.2004 Ostrzeżenie: (0%) ![]() ![]() |
[php:1:4a23304dcd]<?php
$sql = "select * from tabela"; $dane = $db -> getAll($sql, DB_FETCHMODE_ASSOC); $smarty -> assign("dane", $dane); ?>[/php:1:4a23304dcd] [xml:1:4a23304dcd] <table> <tr> <td> {section name=i loop=$dane} {$dane[i].nazwa_kolumny_z_bazy} {/section} </td> </tr> </table> [/xml:1:4a23304dcd] |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 6 Pomógł: 0 Dołączył: 15.05.2003 Ostrzeżenie: (0%) ![]() ![]() |
a co wstawić w zmiennej $db ?
|
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 6 Pomógł: 0 Dołączył: 15.05.2003 Ostrzeżenie: (0%) ![]() ![]() |
hmmm.....
mam jakiś error? Fatal error: Call to undefined function: getall() in ..... on line 9 |
|
|
![]()
Post
#9
|
|
![]() Grupa: Przyjaciele php.pl Postów: 554 Pomógł: 0 Dołączył: 4.04.2002 Skąd: Tychy Ostrzeżenie: (0%) ![]() ![]() |
Cytat hmmm.....
mam jakiś error? Fatal error: Call to undefined function: getall() in ..... on line 9 Bo to jest przyklad wykorzystujacy obiekt db ![]() [php:1:a5dcaa7e5b]<?php $queryl = "select * from tabela"; $r = mysql_query( $query ); while( $line = mysql_fetch_assoc( $r ) ){ $wynik[] = $line; } $smarty -> assign("dane", $wynik); $smarty->display(); ?>[/php:1:a5dcaa7e5b] Kod <table>
{section name=i loop=$dane} <tr> <td>{$dane[i].kolumna1}</td><td>{$dane[i].kolumna2}</td>... </tr> {/section} </table> -------------------- "Real children don't go hoppity-skip unless they are on drugs."
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 21.08.2025 - 23:25 |