Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Pętla for - jak umieścić w smartach?
Forum PHP.pl > Forum > Przedszkole
casperii
Panowie mam problem ze wstawieniem wyniku w smartach.
Mój kod:
  1. $images = array('jeden.jpg','dwa.jpg','trzy.jpg');
  2. $text = array('pierwszy', 'drugi', 'trzeci');
  3. for ($i=0 ; $i<count($images) ; $i++) {
  4. <option value="$images[$i]">$text[$i]</option>
  5. }
  6. $i++;


O ile powyższy kod działa w czystym kodzie php , tak robiąc w smartach mam problem jak poprawnie ma to wyglądać.
Ktoś pomoże?
JoShiMa
Wiem, że pytałeś panów, ale może przyjmiesz podpowiedź od kobiety wink.gif http://blog.bexlab.pl/szablony-smarty-odc4-petla/24/
casperii
@JoShiMa dzięki, ale nie jestem pewien czy {section} się sprawdzi, dużo się o tym piszę na forach , że powinno stosować się {foreach} , pozatym w tym {section} tylko 1 x pobrać mogę array, a ja potrzebuje 2 tablice wczytać do smartów.
kapslokk
  1.  
  2. {foreach from=$images item=image key=k}
  3. <option value="{$image}">{$texts[$k]}</option>
  4. {/foreach}

Coś takiego może?

Że już nie wspomnę o:
http://www.smarty.net/docsv2/en/language.f...tml.options.tpl
LowiczakPL
przekombinowałem ale spradź czy o to Ci chodzi, mam nadzieję że rozumiesz co robi ten kod

  1. $images = array('jeden.jpg','dwa.jpg','trzy.jpg');
  2. $text = array('pierwszy', 'drugi', 'trzeci');
  3.  
  4. $ile = count($images);
  5.  
  6. for ($i=0 ; $i<$ile ; $i++) {
  7. $tab[$text[$i]] = $images[$i];
  8. }
  9.  
  10. $smarty->assign('Tablica', $tab);
  11.  
  12.  
  13.  
  14. // a to widok Smarty
  15.  
  16. {foreach from=$Tablica key=k item=v}
  17. <option value="{$k}">{$v}</option>
  18. {/foreach}
kapslokk
Tak, przekombinowałeś: http://php.net/manual/en/function.array-combine.php
JoShiMa
Cytat(casperii @ 14.05.2016, 18:46:30 ) *
@JoShiMa dzięki, ale nie jestem pewien czy {section} się sprawdzi, dużo się o tym piszę na forach , że powinno stosować się {foreach} , pozatym w tym {section} tylko 1 x pobrać mogę array, a ja potrzebuje 2 tablice wczytać do smartów.


Jak to dwa razy wczytać? Przecież raz lecisz po tej tablicy. Wyciągasz w pętli index z tablicy pierwszej (wszystko jest pięknie w dokumentacji smarty opisane) i po tym indeksie czytasz z drugiej tablicy. Możesz miec też tablicę złożoną z tablic dwuelementowych i czytać w pętli element pierwszy i element drugi. TO naprawde nie jest wyższa szkoła jazdy.

EDIT: http://www.smarty.net/files/docs/manual-en-2.6.pdf str 82-87
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.