Autor Zpráva
libor2
Profil *
Ahoj potřebuji poradit se smarty.

Načítám data z databáze např.:

$query=mysql_query("SELECT nazev FROM clanky where id=1");
$query=mysql_feth_assoc($query);

poté předám šabloně :

$smarty->assign("zaznam",$query);

toto mám v index.php a v šabloně index.tpl mám:
<ul>
<li>{ $zaznam }</li>
</ul>

a všechno funguje jak má a můj problém je , že nevím jak předám více výsledků z databáze.

Snad jsem to popsal srozumitelně.
aDAm
Profil
nacti ty vysledky do pole a to pak predej sablone...v sablone je pak muze vypsat napr pomoci foreach
libor2
Profil *
Zkoušel jsem to takhle, cyklus proběhle, ale vypíše mi to jenom několikrát Array.

$mysqldb->query("SELECT * FROM clanky");

while($row=$mysqldb->fetchAssoc()){
$pole[]=$row;
}

$smarty->assign("pole",$pole);
ronnie
Profil
...a nebo použit metodu Smarty::append() při procházení cyklu.
libor2
Profil *
a nebo použit metodu Smarty::append() při procházení cyklu.

a můžeš to trochu přiblížit?

Čerpal jsem i z tvého webu, ale tohle jsem tam nenašel.Díky.
ronnie
Profil
Čerpal jsem i z tvého webu, ale tohle jsem tam nenašel.Díky.

Na Smarty teď nemám příliš čas, ale snad do konce roku bych web chtěl dokončit.

K te podmince.

$mysqldb->query("SELECT * FROM clanky");

while($row=$mysqldb->fetchAssoc()){
$smarty->append('pole', $pole);
}

a ve smarty lze pak přistupovat takto:

{foreach from=$pole item='value'}
Řádek ID : {$value.id}
{/foreach}
libor2
Profil *
$mysqldb->query("SELECT * FROM clanky");

while($row=$mysqldb->fetchAssoc()){
$smarty->append('pole', $pole);
}

a ve smarty lze pak přistupovat takto:

{foreach from=$pole item='value'}
Řádek ID : {$value.id}
{/foreach}


ale kde vytvořím to pole $pole.
ronnie
Profil
Chyba, správně m být cyklus takový:

while($row=$mysqldb->fetchAssoc()){
$smarty->append('pole', $row);
}
libor2
Profil *
Díky moc.Tak je to správně mě to mohlo napadnout.
zero0x
Profil
takze, toto teraz tiez riesim, teda som skusenejsi


/* index.php */
$query=mysql_query("dotaz...");
$resp = array();
while($a = mysql_fetch_array($query)){
$resp[] = $a; //tieto akcie je najlepsie zautomatizovat, a napisat funkciu, ktora vracia asociativne pole z hocijakeho dotazu
}
$smarty->assign('prispevky', $resp);

//takymto sposobom sa ti vytvori dvojrozmerne pole, ktore mozes zo Smartyho accesovat cez foreach

/* index.tpl */
{foreach from=$prispeky item=prispevok}
stlpec z databazy 1: {$prispevok.stlpec1} <br /><br />
stlpec z databazy 2: {$prispevok.stlpec2}
{/foreach}
Toto téma je uzamčeno. Odpověď nelze zaslat.

0