Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php][smarty] Problem z pętlą
Forum PHP.pl > Forum > Przedszkole
ewelinac18
Witam ! mam problem z wygenerowaniem wartości dla pola select w szablonie,
jak za pomocą smart zrobić:
mamy zmienną $liczba = 5;
i aby w szablonie wyświetlić {METRY}

$ile = array ($liczba*1, $liczba*2, $liczba*3, $liczba*4);

  1. <?php
  2. $ile = array ();
  3. $view_szab->assign("METRY",$ile);
  4. ?>



będę bardzo wdzięczna za pomoc smile.gif
dr_bonzo
Ze smarkow dawno nie korzystalem ale masz {section} czy tez chyba {foreach}. Reszta jest w manualu.
qqrq
Cytat(dr_bonzo @ 9.04.2008, 03:18:54 ) *
Ze smarkow dawno nie korzystalem ale masz {section} czy tez chyba {foreach}. Reszta jest w manualu.


Rozwijając:

  1. <select name="ile">
  2. {section name=k loop=$METRY}
  3. <option>{$METRY[k]}</option>
  4. {/section}
ewelinac18
ok fajnie super ale to ze strony szablonu

znalazłam cos takiego w manual ok rozumiem wszystko
  1. <?php
  2. array(1000, 1001, 1002);
  3. $smarty->assign('myArray', $arr);
  4.  
  5.  
  6. Template to output $myArray in an un-ordered list
  7.  
  8. <ul>
  9. {foreach from=$myArray item=foo}
  10. <li>{$foo}</li>
  11. {/foreach}
  12. </ul>
  13. ?>



ale jak zrobić ze strony skryptu, jeśli wyciągam z bazy dane i chce je zapisać je w jednej tablicy:
$wiersz[1] = '1.31'; // jeden karton zawiera 1.31m
i teraz chce je zapisać w array :
1.31 // jeden karton 1.31 x 1
2.62 // dwa kartony 1.31 x 2
3.93 // trzy kartony 1.31 x 3
  1. <?php
  2. array = array(1.31, 2.62, 3.93);
  3. ?>
loff
Cytat(ewelinac18 @ 9.04.2008, 07:54:41 ) *
ale jak zrobić ze strony skryptu, jeśli wyciągam z bazy dane i chce je zapisać je w jednej tablicy:
$wiersz[1] = '1.31'; // jeden karton zawiera 1.31m
i teraz chce je zapisać w array :
1.31 // jeden karton 1.31 x 1
2.62 // dwa kartony 1.31 x 2
3.93 // trzy kartony 1.31 x 3
  1. <?php
  2. array = array(1.31, 2.62, 3.93);
  3. ?>


W pętli ?
  1. <?php
  2. for($i=1;$i<4;$i++)
  3. {
  4. tablica[$i] = $wiersz[1] *$i;
  5. }
  6. // I wtedy masz swoja tablice 
  7. // array(1.31, 2.62, 3.93);
  8. ?>
ewelinac18
loff dzięki smile.gif oto chodziło
ale mam problem robie tak jak napisał qqrq
ale nie działa to sad.gif
Kod
<select name="ile">
{section name=k loop=$METRY}
<option>{$METRY[k]}</option>
{/section}
</select>
loff
Cytat(ewelinac18 @ 9.04.2008, 08:39:05 ) *
loff dzięki smile.gif oto chodziło
ale mam problem robie tak jak napisał qqrq
ale nie działa to sad.gif
Kod
<select name="ile">
{section name=k loop=$METRY}
<option>{$METRY[k]}</option>
{/section}
</select>

A to tu już nie za bardzo pomogę smile.gif na smarty nie znam sie zbytnio , a na to co wiem to ten kod co podał qqrq jest powinien zadziałać jeśli w skrypcie robisz
  1. <?php
  2. $view_szab->assign("METRY",$tablica);
  3. ?>

a jesli tak masz to nie co jeszcze moze byc nie tak
revyag
Za dużo kombinowania ze smarkami smile.gif
  1. <?php
  2. $wiersz[1] = 1.31;
  3. for($i = 1; $i < 4; $i++)
  4. {
  5. $tablica[''.$wiersz[1] *$i.''] = $wiersz[1] * $i;
  6. }
  7. $view_szab->assign('tablica',$tablica);
  8. ?>


  1. {html_options name=ile options=$tablica}
ewelinac18
Probowałam to co revyag nic mi nie wyświetla

Wszystko Opisze co mam

plik nr 1.php
  1. <?php
  2. for($i=0;$i<4;$i++){ $tablica[$i] = $prodArray[0]['prodWeight'] * $i;}
  3. $view_prod->assign('METRY',$tablica);
  4. ?>

plik 2.tpl
  1. <select name="ile">
  2. {section name=k loop=$METRY}
  3. <option>{$METRY[k]}</option>
  4. {/section}


Wychodzi mi

zauważyłam ze nie mam smarty tylko new XTemplate i dlatego nie działa w szablonach to a może wiecie gdzie jest jaki monual lub jak to zrobić w XTemplate

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.