SMARTY for

Programovacie jazyky, rady, poradňa...
Basa88
Amateur
Amateur
Príspevky: 17
Registrovaný: 30 mar 2011, 21:22

SMARTY for

Príspevok od používateľa Basa88 »

Ahoj,

vedel by im niekto prosim poradit, ako by som mohla spravit tento kod v SMARTY

Kód: Vybrať všetko

$result = mysql_query("SELECT * FROM WEBSITE WHERE id_account = '$id_account'");
for($count = 0; $count < mysql_num_rows($result); $count++ ) {
    $website_name = mysql_result($result, $count, "website_name");
    $id_page = mysql_result($result, $count, "id_page");
    echo "<option value=\"$id_page\">$website_name</option>";
}
Ide o to, ze potrebujem do selectu dat mnoho optionov z databazy, no neviem, ako na to.

Dakujem
sorien
Medium Expert
Medium Expert
Príspevky: 88
Registrovaný: 02 jún 2011, 21:55

Re: SMARTY for

Príspevok od používateľa sorien »

// do templatu sa query nedava, template ma iba zobrazovat predpripravene data tak, aby sa dali lahko modifikovat, ked menis strukturu stranky atd...

// v php ostava

Kód: Vybrať všetko

$ids = array();
$result = mysql_query("SELECT * FROM WEBSITE WHERE id_account = '$id_account'");
for($count = 0; $count < mysql_num_rows($result); $count++ ) {
    $website_name = mysql_result($result, $count, "website_name");
    $ids[mysql_result($result, $count, "id_page")] = $website_name;
}

$smarty->assign('ids', $ids);
// a v template

Kód: Vybrať všetko

{html_options name=ids options=$ids}
Basa88
Amateur
Amateur
Príspevky: 17
Registrovaný: 30 mar 2011, 21:22

Re: SMARTY for

Príspevok od používateľa Basa88 »

Dakujem. Este by som potrebovala s jednou vecou poradit. Vyberam z MySQL tabulky napr. 10 riadkov, kazdy riadok ma 5 udajov (5 stlpcov) a potrebovala by som tie udaje zobrazit. Neviem, aky je najlepsi sposob pomocou SMARTY.

V klasickom PHP sa jedna o nieco taketo:

Kód: Vybrať všetko

$result = mysql_query("SELECT * FROM table WHERE id  = '$id'");
for($count = 0; $count < mysql_num_rows($result); $count++ ) {
    $value1 = mysql_result($result, $count, "id1");
    $value2 = mysql_result($result, $count, "id2");
    $value3 = mysql_result($result, $count, "id3");
    $value4 = mysql_result($result, $count, "id4");
    $value5 = mysql_result($result, $count, "id5");

echo "<div>
<span>$value1</span>
<span>$value2</span>
<span>$value3</span>
<span>$value4</span>
<span>$value5</span>
</div>"

}
Mala by som to ulozit nejak do pola?
juho
Star
Star
Používateľov profilový obrázok
Príspevky: 551
Registrovaný: 11 máj 2007, 21:16

Re: SMARTY for

Príspevok od používateľa juho »

pre pavla demitru a preco to v php kode ma vyzerat hentak?

Kód: Vybrať všetko

$result = mysql_query("SELECT * FROM table WHERE id  = '$id'");
while($row = mysql_fetch_assoc($result)) $data[]=$row;

$echo="";
foreach($data as $row):
  $echo.="<div>\n";
    foreach($row as $column)
      $echo.="<span>$column</span>\n";
  $echo.="</div>\n";
endforeach;
echo $echo;
a v smarty ak pouzivas verziu 3 tak sa foreachu zmenila syntax na rovnaku ako ma aj php
Napísať odpoveď