[ Milan M. Radovic @ 05.07.2010. 19:06 ] @
Zanima me kako da u template-u napisem smarty code tako da ispise tabelu iz MySQL baze, pritom da se ne zna ni duzina, ni broj kolona, niti asocijativno ime clana niza.
Probao sam sa SECTION ali nesto nije urodilo plodom.... Da li je neko to radio ranije. (kapiram da na slican nacin radi i PHPmyAdmin kad izlistava sadrzaj tabele)

Imate li nekakvu ideju i smernice?
[ Nikola Poša @ 05.07.2010. 20:33 ] @
A jesi probao sa foreach?
[ Milan M. Radovic @ 06.07.2010. 08:30 ] @
Mozes li mali primer....? Mislim znam ja da namestim kada znam ime assoc ali kad ne znam ni broj kolona + da se ispise prvi red (head) tabele... kapiras?

UPDATE: Glup sam i uspeo sam :)
Code:

{foreach name=outer item=contact from=$contacts}
  <hr />
  {foreach key=key item=item from=$contact}
    {$key}: {$item}<br />
  {/foreach}
{/foreach}
[ squirll @ 15.09.2010. 10:52 ] @
da ne otvaram novu temu , foreach problem imam
imam u templatu

Code:

{foreach from=$profits key=date item=amount}
    <tr>
      <td class="result">{$date}</td>
      <td class="result">{if $amount=='holiday' || $amount =='weekend'}{$amount}{else}${$amount}{/if}</td>
    </tr>
{/foreach}

i nekad prikazuje a nekad ne ove vrednosti ...
u php-u kad izlistam array njega UVEK pokaze kako treba , ali smarty nekad nece da ubaci array vec bude prazno ...
neka ideja sta bi moglo praviti problem?
[ dakipro @ 15.09.2010. 11:06 ] @
Tesko je da nekad hoce a nekad nece, a jos teze je ovako pogoditi, sintaksa koju si napisao je ok, tako da jedino logicna greska ostaje, a to je na tebi da proveravas taj niz u svakom koraku, mozda u nekoj liniji assajnujes praznu promenjivu umesto niza, ili u nekom uslovu menjas oblik niza, jer ako je jednom proradio foreach, nema sanse da se sam od sebe nekad promeni, sigurno ti niz nije isti onda uvek, ili ne stize do smarti templejta ili nesto tako

Uzgred, ja bi ovo
{if $amount=='holiday' || $amount =='weekend'}{$amount}{else}${$amount}{/if}
napisao barem ovako
{if $amount=='holiday' || $amount =='weekend'}{else}${/if} {$amount}
jer posle ako alterujes cifru, recimo ako dodas neki modifier za format brojeva x.xxx,xx bice ti lakse na jednom mestu to da radis nego na dva, pa ako zaboravis na drugom posle gomila problema "nekad oce a nekad nece"
[ squirll @ 15.09.2010. 12:14 ] @
Citat:
dakipro: Tesko je da nekad hoce a nekad nece, a jos teze je ovako pogoditi, sintaksa koju si napisao je ok, tako da jedino logicna greska ostaje, a to je na tebi da proveravas taj niz u svakom koraku, mozda u nekoj liniji assajnujes praznu promenjivu umesto niza, ili u nekom uslovu menjas oblik niza, jer ako je jednom proradio foreach, nema sanse da se sam od sebe nekad promeni, sigurno ti niz nije isti onda uvek, ili ne stize do smarti templejta ili nesto tako

Uzgred, ja bi ovo
{if $amount=='holiday' || $amount =='weekend'}{$amount}{else}${$amount}{/if}
napisao barem ovako
{if $amount=='holiday' || $amount =='weekend'}{else}${/if} {$amount}
jer posle ako alterujes cifru, recimo ako dodas neki modifier za format brojeva x.xxx,xx bice ti lakse na jednom mestu to da radis nego na dva, pa ako zaboravis na drugom posle gomila problema "nekad oce a nekad nece" ;)

pastovao sam stari kod(sa mog kompa a ne sa servera) :) u novom je ispravljeno to sa znakom $ :) ostalo je isto u kodu ....
Code:

{foreach from=$profits key=date item=amount}
    <tr>
      <td class="result">{$date}</td>
      <td class="result"> {if $amount !='holiday' || $amount !='weekend'}${/if} {$amount} </td>
    </tr>
{/foreach}


I meni je jako cudno sto nekad hoce nekad nece...
Sta sam primetio kad uradim {$profits.print_r} ne izbaci nista...
kad u php-u uradim njegov print_r dobijem
Code:

Array ( 
[2010-09-15] => 4.96 
[2010-09-14] => 4.90 
[2010-09-13] => 4.84 
[2010-09-10] => 4.78 
[2010-09-09] => 4.72 
[2010-09-08] => 4.67 
[2010-09-07] => 4.61 
[2010-09-06] => 4.56 
[2010-09-03] => 4.50 
[2010-09-02] => 4.45 
[2010-09-01] => 4.40 
[2010-08-31] => 4.34 
[2010-08-30] => 4.29 
[2010-08-27] => 4.11 
)

i sad ovde ima 14nizova..a desi se samo jedan da ispise u smary-u ostale ne....
i sad budi pametan sto nece :S