Seite 2 von 2

Verfasst: 04.03.2005 10:43
von Blutgerinsel
recht Simple
while ($reihe=mysql_fetch_object.......)
verwendest du greifst aber auf das Array $row zurück......

Diese Kurzschreibweise der kopfgesteuerten Schleife holt solange was von der DB bis nichts mehr zurückgegeben wird und demnals bricht die Schleife ab sobald hier $reihe false ist :wink:

Daher solltest du $reihe durch $row austauschen.
Und da du Object Möglichkeit verwendest auch auf ein Objekt zugreifen....d.h.
aus $row['Id'] wird eben $row->Id

evtl. solltest du Platzhalter Variablen großschreiben....Bin mir im moment nicht sicher ob case-sensitiv oder nicht bei dieser Templateengine

Verfasst: 04.03.2005 19:39
von The real Indigo
Ich verzweifel weiter...


Hier der neueste Code:

Code: Alles auswählen

$abfrage = "SELECT * FROM phpbb_name";
$ergebnis = mysql_query($abfrage) or die("MySQL Datenbank Fehler:" . mysql_errno().": ".mysql_error());
while ($row = mysql_fetch_object($ergebnis))
{
$template->assign_block_vars('IRGENDWAS',array('ID'=>$row['ID'],'NAME'=>$row['NAME']));
}

Code: Alles auswählen

Im Template:
<!-- BEGIN IRGENDWAS -->
{ID}{NAME}TEST<br /><br />
<!-- END IRGENDWAS -->

Die Ausgabe sieht immer noch so aus:

Code: Alles auswählen

TEST

TEST

TEST

TEST

TEST

Verfasst: 04.03.2005 20:27
von Pyramide
The real Indigo hat geschrieben:{ID}{NAME}TEST<br /><br />
Da muss {blockname.VARIABLE} hin ({VARIABLE} wären globale Variablen - also per assign_var[s] statt assign_block_vars)

Verfasst: 04.03.2005 20:35
von The real Indigo
Das wäre dann ja so:

Code: Alles auswählen

$abfrage = "SELECT * FROM phpbb_mods";
$ergebnis = mysql_query($abfrage) or die("MySQL Datenbank Fehler:" . mysql_errno().": ".mysql_error());
while ($row = mysql_fetch_object($ergebnis))
{
$template->assign_var('IRGENDWAS',array('ID'=>$row['ID'],'NAME'=>$row['NAME']));
}

Dann krieg ich aber gar keine Ausgabe.

Verfasst: 04.03.2005 20:37
von Leuchte

Code: Alles auswählen

$abfrage = "SELECT * FROM phpbb_name";
$ergebnis = mysql_query($abfrage) or die("MySQL Datenbank Fehler:" . mysql_errno().": ".mysql_error());
while ($row = mysql_fetch_object($ergebnis))
{
$template->assign_block_vars('IRGENDWAS',array('ID'=>$row['ID'],'NAME'=>$row['NAME']));
}

Code: Alles auswählen

Im Template:
<!-- BEGIN IRGENDWAS -->
{IRGENDWAS.ID}{IRGENDWAS.NAME}TEST<br /><br />
<!-- END IRGENDWAS -->

Verfasst: 04.03.2005 21:50
von The real Indigo
Ich krieg keine Werte ausgegeben... :-?


Mit dem Testscript von Seite 1 krieg ich die 5 Werte.


Das heisst, die Daten sind in der DB und die Ausgabe klappt.


Mit deiner letzten Verbesserung, Leuchte kommt auch nur

Code: Alles auswählen

TEST

TEST

TEST

TEST

TEST


Verfasst: 04.03.2005 22:05
von Leuchte

Code: Alles auswählen

$template->assign_block_vars('IRGENDWAS',array('ID'=>$row->ID,'NAME'=>$row->NAME));
?

Die tpl-Datei bleibt so

Verfasst: 04.03.2005 22:11
von The real Indigo
Jaaaaaaaaa...


Super Danke... *freu*


Jetzt kann ich auch in Ruhe schlafen...