Seite 1 von 1
TPL: Smarty foreach Problem
Verfasst: 30.07.2006 16:28
von witzigerkiller
Hi Leutz, ich hoffe hier sind einige von euch die sich mehr wie ich mit smarty auskennen...
Also ich will gerne meine einträge ausgeben....
so sieht das php aus:
Code: Alles auswählen
$sql = "SELECT * FROM eintraege ORDER by id DESC";
$query = mysql_query($sql);
$daten = mysql_fetch_assoc($query);
und so die tpl datei:
Code: Alles auswählen
{foreach from=$daten item=dates}
$dates["id"]
{/foreach}
nur leider gibt der mir nichts aus
Verfasst: 30.07.2006 17:44
von FatFreddy
Das
Smarty-Manualhilft immer gerne.
Kleiner Tip: $daten auch an das Template übergeben.
FatFreddy
Verfasst: 30.07.2006 18:07
von witzigerkiller
jaja das manuel lese ich und lese ich aber ich blicks net...
so php datei um
erweitert....
aber die ausgabe geht net... wie muss ich die gestalten?
momentan so:
Code: Alles auswählen
{foreach from=$daten item=dates}
$dates[name]
{/foreach}
Verfasst: 30.07.2006 18:26
von witzigerkiller
klar wenn datenbank leer ist...so jetzt geht´s aber die ausgabe hat vor und nach einem wort immer 111 stehen
also php sieht so aus:
Code: Alles auswählen
$sql = "SELECT * FROM eintraege ORDER by id DESC";
$query = mysql_query($sql);
$daten = mysql_fetch_assoc($query);
$smarty->assign("dates",$daten);
tpl so:
Code: Alles auswählen
{foreach item=daten from=$dates}
{$daten.name}<br />
{$daten.mail}
{/foreach}
ausgabe so:
1
1 f
f g
g h
h d
d 1
1 1
1
lol fehler gefunden.....wand gegen kopf schlag...
php muss so aussehen:
oh man war ja klar aber solch ein kleinen fehler übersieht man ja immer wieder
Verfasst: 30.07.2006 19:09
von witzigerkiller
jetzt wird aber nur der letze beitrag ausgegeben....scheiß smarty ich haus echt bald mal in papierkorb
Verfasst: 30.07.2006 19:45
von BB-BF-BM
Versuch mal
Code: Alles auswählen
$sql = "SELECT * FROM eintraege ORDER by id DESC";
$query = mysql_query($sql);
while( $daten = mysql_fetch_assoc($query) )
{
$smarty->assign("dates",$daten);
}
Verfasst: 30.07.2006 19:54
von witzigerkiller
so geht´s aber dann bekomm ich wieder in jedem beitrag als name oder e-mail immer nur eine zahl oder einen buchstaben... ich glaube da muss noch sowas wie ein key rein odersowas... ich blick echt nimmer durch
Verfasst: 30.07.2006 19:59
von witzigerkiller
also ich hab jetzt mal alte dateien mühevoll über meinen hoster bekommen der noch ein backup vom letzten jahr hatte, und habe volgenden code gefunden:
Code: Alles auswählen
array_push($Message,array("id"=>$daten['id'],"Zeit"=>$daten['Zeit'],"Datum"=>$daten['Datum'],"Name"=>$daten['Name'],
"Vorname"=>$daten['Vorname'],"Mail"=>$daten['Mail'],
"Homepage"=>$daten['Homepage'],"Eintrag"=>nl2br($text)));
}
mysql_close($verbindung);
$smarty->assign("Message",$Message);
ich glaube damit ist mein Prob gelöst
Verfasst: 30.07.2006 20:06
von witzigerkiller
jap so funzts:
Code: Alles auswählen
$sql = "SELECT * FROM eintraege ORDER by id DESC";
$query = mysql_query($sql);
$message = array();
while ($daten = mysql_fetch_assoc($query))
{
array_push($message,array("id"=>$daten['id'],"name"=>$daten['name'],"mail"=>$daten['mail'],"hp"=>$daten['hp'],"nachricht"=>nl2br($daten['nachricht'])));
}
$smarty->assign("dates",$message);
EDIT: Frag mich aber nicht warum...dANKE
Verfasst: 30.07.2006 20:40
von FatFreddy
Um zu sehen was im Template ankommt, kannst Du die
Debugconsolevon Smarty nutzen.
Damit lassen sich Fehler deutlich einfacher finden.
FatFreddy