Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [SMARTY] smarty a pętle
Balon
post 15.03.2006, 08:02:56
Post #1





Grupa: Zarejestrowani
Postów: 422
Pomógł: 0
Dołączył: 14.12.2005
Skąd: Wałbrzych

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


W jaki sposob zrobic petle w smarty ?

myslalem o czyms takim
  1. <?php
  2. while($row = mysql_fetch_array($query)){
  3. $smarty->assign('PETLA', $row['dane']);
  4. }
  5. ?>


czy to dobry pomysl ?


--------------------
Postura wielka i morda wredna, jestem Balon, kozak z osiedla !
bzdury.pl - Królestwo rozrywki
Go to the top of the page
+Quote Post
sf
post 15.03.2006, 08:15:12
Post #2





Grupa: Zarejestrowani
Postów: 1 597
Pomógł: 30
Dołączył: 19.02.2003
Skąd: Tychy

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


moze zly bo to nie dziala? ;-)

  1. <?php
  2. $aData = array();
  3. while($aRow = mysql_fetch_assoc($query)){
  4. $aData[] = $aRow;
  5. }
  6. $oSmarty->assign('data', $aData);
  7. ?>


--------------------
Zapraszam na mój php blog, tworzenie stron.
Go to the top of the page
+Quote Post
bigZbig
post 15.03.2006, 09:37:31
Post #3





Grupa: Zarejestrowani
Postów: 740
Pomógł: 15
Dołączył: 23.08.2004
Skąd: Poznań

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


Przyklad zastosowania petli foreach w smarty znajdziesz w dokumentacji Smarty.


--------------------
bigZbig (Zbigniew Heintze) | blog.heintze.pl
Go to the top of the page
+Quote Post
Balon
post 28.03.2006, 13:43:09
Post #4





Grupa: Zarejestrowani
Postów: 422
Pomógł: 0
Dołączył: 14.12.2005
Skąd: Wałbrzych

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


dopiero dzisiaj beda mi potrzebne petle w smarty no i teraz czytam sobie ta dokumentacje i proboje tak
  1. <table border="0">
  2. {foreach from=$linki item=link}
  3. <tr>
  4. <td>{$link}</td>
  5. </tr>
  6. <tr>
  7. <td>{$opis}</td>
  8. </tr>
  9. {/foreach}

no ale jak ja chce do tej petli wrzucac wiecej niz jedna wartosc ? np link, autor, opis, screen, komenty, itd ?


--------------------
Postura wielka i morda wredna, jestem Balon, kozak z osiedla !
bzdury.pl - Królestwo rozrywki
Go to the top of the page
+Quote Post
nospor
post 28.03.2006, 13:47:47
Post #5





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




robisz tak jak ci napisal sf, czyli masz tablicę, ktorej kazy element to tablica, a potem w smarty:
Kod
<table>
{foreach from=$data item=row}
<tr>
<td>{$row.link}</td>
<td>{$row.opis}</td>
.....
</tr>
{/foreach}
</table>


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
Balon
post 28.03.2006, 15:37:30
Post #6





Grupa: Zarejestrowani
Postów: 422
Pomógł: 0
Dołączył: 14.12.2005
Skąd: Wałbrzych

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


napisalem sobie tak
  1. <?php
  2. while( $sql->sql_fetch_row() )
  3. {
  4. $link['title'] = $sql->rows[0];
  5. $link['url'] = $sql->rows[1];
  6. }
  7. $smarty->assign( 'links', $link );
  8. $smarty->display( 'main.tpl' );
  9. ?>


plik tpl
  1. <table border="0">
  2. {foreach from=$links item=link}
  3. <tr>
  4. <td>{$link.title}</td>
  5. </tr>
  6. <tr>
  7. <td>{$link.url}</td>
  8. </tr>
  9. <tr>
  10. <td><hr /></td>
  11. </tr>
  12. {/foreach}


i efekt tego...

http://bzdury.pliki.pl/main.php

w bazie jest tylko jeden rekord i skeszowany wyglada on tak
Kod
a:1:{i:0;a:2:{i:0;s:9:"testowy 1";i:1;s:12:"www.pliki.pl";}}


dlaczego wyswietla to taki dziwny wynik ?


--------------------
Postura wielka i morda wredna, jestem Balon, kozak z osiedla !
bzdury.pl - Królestwo rozrywki
Go to the top of the page
+Quote Post
nospor
post 28.03.2006, 15:46:01
Post #7





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




masz zrobic tablicę, ktorej elementy to tez tablice. ty w tej chwili tego nie robisz...
  1. <?php
  2.  
  3. $i=0;
  4. $link=array();
  5. while( $sql->sql_fetch_row() )
  6. {
  7. $link[$i] = array();
  8. $link[$i]['title'] = $sql->rows[0];
  9. $link[$i]['url'] = $sql->rows[1];
  10. $i++;
  11. }
  12. ?>


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
Balon
post 28.03.2006, 15:47:36
Post #8





Grupa: Zarejestrowani
Postów: 422
Pomógł: 0
Dołączył: 14.12.2005
Skąd: Wałbrzych

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


ach no to teraz wszystko jasne ;] dzieki wielkie winksmiley.jpg


--------------------
Postura wielka i morda wredna, jestem Balon, kozak z osiedla !
bzdury.pl - Królestwo rozrywki
Go to the top of the page
+Quote Post
Saddam92
post 25.11.2006, 21:51:53
Post #9





Grupa: Zarejestrowani
Postów: 69
Pomógł: 0
Dołączył: 17.11.2006

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


no dobrze a jeśli NIE mam tablicy asocjacyjnej.. a chciałbym zrobić cos tabele:
  1. ....
gdzie w miejscu kropek podstawione by były wszystkie wywołania tablicy od 0 do końca..
jak cos takiego zrobić w smarty, (w php mozna to zrobic prosta petla for, a tutaj nie za bardzo) - z ta petla foreach się troche pogubiłem ... czy mógłby ktoś pomóc..?

Ten post edytował Saddam92 25.11.2006, 21:53:01
Go to the top of the page
+Quote Post

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

 



RSS Wersja Lo-Fi Aktualny czas: 13.06.2025 - 09:21