TPL: Smarty foreach Problem

Fragen zu allen Themen rund ums Programmieren außerhalb von phpBB können hier gestellt werden - auch zu anderen Programmiersprachen oder Software wie Webservern und Editoren.
Antworten
Benutzeravatar
witzigerkiller
Gesperrt
Beiträge: 878
Registriert: 05.02.2005 13:27
Wohnort: Sonthofen

TPL: Smarty foreach Problem

Beitrag 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
Bitte keine Anfragen mehr per PN
When you get me on my nerven I put you in the Gully and do the Deckel drüf and you never will come back to the Tageslicht.
Benutzeravatar
FatFreddy
Mitglied
Beiträge: 1937
Registriert: 25.07.2004 15:52
Kontaktdaten:

Beitrag von FatFreddy »

Das Smarty-Manualhilft immer gerne. ;)

Kleiner Tip: $daten auch an das Template übergeben.


FatFreddy
Watch out where the huskies go, don't you eat the yellow snow...
Mehr dazu im Reiseforum InselTalk.de.
Tupperdosensucher schauen ins Geocachingforum.
Benutzeravatar
witzigerkiller
Gesperrt
Beiträge: 878
Registriert: 05.02.2005 13:27
Wohnort: Sonthofen

Beitrag von witzigerkiller »

jaja das manuel lese ich und lese ich aber ich blicks net...

so php datei um

Code: Alles auswählen

$smarty->assign("daten",$daten);
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}
Bitte keine Anfragen mehr per PN
When you get me on my nerven I put you in the Gully and do the Deckel drüf and you never will come back to the Tageslicht.
Benutzeravatar
witzigerkiller
Gesperrt
Beiträge: 878
Registriert: 05.02.2005 13:27
Wohnort: Sonthofen

Beitrag 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:

Code: Alles auswählen

$smarty->assign("dates",array($daten));
oh man war ja klar aber solch ein kleinen fehler übersieht man ja immer wieder
Bitte keine Anfragen mehr per PN
When you get me on my nerven I put you in the Gully and do the Deckel drüf and you never will come back to the Tageslicht.
Benutzeravatar
witzigerkiller
Gesperrt
Beiträge: 878
Registriert: 05.02.2005 13:27
Wohnort: Sonthofen

Beitrag von witzigerkiller »

jetzt wird aber nur der letze beitrag ausgegeben....scheiß smarty ich haus echt bald mal in papierkorb
Bitte keine Anfragen mehr per PN
When you get me on my nerven I put you in the Gully and do the Deckel drüf and you never will come back to the Tageslicht.
BB-BF-BM
Mitglied
Beiträge: 2179
Registriert: 28.10.2005 16:38
Wohnort: Essen

Beitrag 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); 
}
Benutzeravatar
witzigerkiller
Gesperrt
Beiträge: 878
Registriert: 05.02.2005 13:27
Wohnort: Sonthofen

Beitrag 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
Bitte keine Anfragen mehr per PN
When you get me on my nerven I put you in the Gully and do the Deckel drüf and you never will come back to the Tageslicht.
Benutzeravatar
witzigerkiller
Gesperrt
Beiträge: 878
Registriert: 05.02.2005 13:27
Wohnort: Sonthofen

Beitrag 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
Bitte keine Anfragen mehr per PN
When you get me on my nerven I put you in the Gully and do the Deckel drüf and you never will come back to the Tageslicht.
Benutzeravatar
witzigerkiller
Gesperrt
Beiträge: 878
Registriert: 05.02.2005 13:27
Wohnort: Sonthofen

Beitrag 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
Bitte keine Anfragen mehr per PN
When you get me on my nerven I put you in the Gully and do the Deckel drüf and you never will come back to the Tageslicht.
Benutzeravatar
FatFreddy
Mitglied
Beiträge: 1937
Registriert: 25.07.2004 15:52
Kontaktdaten:

Beitrag von FatFreddy »

Um zu sehen was im Template ankommt, kannst Du die Debugconsolevon Smarty nutzen.
Damit lassen sich Fehler deutlich einfacher finden.

FatFreddy
Watch out where the huskies go, don't you eat the yellow snow...
Mehr dazu im Reiseforum InselTalk.de.
Tupperdosensucher schauen ins Geocachingforum.
Antworten

Zurück zu „Coding & Technik“