Seite 1 von 2

PHP-Code in $ speichern?

Verfasst: 16.04.2007 10:48
von leopittoni
Hallo

Wie kann ich PHP-Code in einer $variabel speichern, und nachher (an einer anderen Stelle im Code) "einsetzen" (echo?)

In einer Variable muss ich speichern:

Code: Alles auswählen

while ($row = mysql_fetch_array($minilistesa))
{
'<tr align="center"><td>' . $row['customers_firstname'] . ' ' .$row['customers_lastname'] . '</td>'
}
Danke für die Hilfe! Léo

Verfasst: 16.04.2007 10:50
von Dr.Death

Verfasst: 16.04.2007 10:57
von leopittoni
Schon mal danke für den Link.

Komme aus dem Beispiel auf der Seite nicht ganz klar...

Code: Alles auswählen

$listesamstag = "else
{
while ($rowsa = mysql_fetch_array($minilistesa))
{
'<tr align='center'><td>' . $rowsa['customers_firstname'] . ' ' .$rowsa['customers_lastname'] . '</td>'
}";

eval ("\$listesamstag = \"$listesamstag\";");
}
Sowas? Geht bei mir jedenfalls nicht, gibt
"Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in..."
Was muss genau in dieses eval()?

Danke! Léo

Verfasst: 16.04.2007 12:53
von Xwitz
Was ist mit dem restlichen Code (der vor "else" ausgeführt wird)? Auf welche Zeile bezieht sich der Fehler? Was soll das in der while-Schleife? Fehlt da vielleicht ein echo und ein Semikolon?

Verfasst: 16.04.2007 13:03
von leopittoni
EDIT:

Ach, ja, da fehlte ein echo...

Code: Alles auswählen

else
{

while ($row = mysql_fetch_array($minilistesa))
{
echo '<tr align='center'><td>' . $rowsa['customers_firstname'] . ' ' .$rowsa['customers_lastname'] . '</td>';
}

}
Jetzt meldet es mir aber in der Zeile mit echo diesen Fehler:
Parse error: syntax error, unexpected T_STRING, expecting ',' or ';'
Léo

Verfasst: 16.04.2007 13:23
von Dr.Death
omg, jetzt hast du vergessen die Hochkommas zu maskieren:

echo '<tr align=\'center\'><td>' . $rowsa['customers_firstname'] . ' ' .$rowsa['customers_lastname'] . '</td>';
oder so:

Code: Alles auswählen

echo '<tr align="center"><td>' . $rowsa['customers_firstname'] . ' ' .$rowsa['customers_lastname'] . '</td>';

Verfasst: 16.04.2007 13:37
von leopittoni
genau, das wars! Danke.

Letztes Problem:

Code: Alles auswählen

$samstag = "SELECT customers_firstname, customers_lastname
FROM customers WHERE customers_id = $miniidsa3 ORDER BY customers_firstname ASC";

$minilistesa = mysql_query($samstag);

//ausgabe
while ($rowsa = mysql_fetch_array($minilistesa))
{
echo '<td>' . $rowsa['customers_firstname'] . ' ' .$rowsa['customers_lastname'] . '</td>';
}
Das ergibt nur einen (1) Namen + Nachnamen aus der DB, obwohl es eigentlich mehrere richtige "Resultate" ausgeben sollte.

Jemand eine Idee weshalb?

Danke, Léo

Verfasst: 16.04.2007 13:46
von Dr.Death
mysql_fetch_array --> mysql_fetch_row ???

Verfasst: 16.04.2007 13:48
von leopittoni
mit fetch_row wird sogar gar nichts ausgegeben... fetch_array sollte stimmen.

Léo

Verfasst: 16.04.2007 14:03
von S2B
Dr.Death hat geschrieben:mysql_fetch_array --> mysql_fetch_row ???
Andersrum: mysql_fetch_array --> mysql_fetch_assoc. :P :D

@leopittoni: Bist du sicher, dass es mehrere Zeilen geben sollte, obwohl du die customers_id explizit angibst?