PHP Code aus DB auslesen - Problem
tomstig 10.10.2005 - 22:12 600 3
tomstig
OC Addicted
|
Also folgendes: Für ein Art Templatesystem hol ich mir ein paar Codefetzn aus der DB. Da in dem Feld, wo der Code ist, auch einfacher Text sein kann, hab ich die Codes mit einem #php markiert (ohne <?php ?>, sonst würde eval nicht funktionieren) und check dann einfach, ob dieses #php drinsteckt => wenn ja, dann soll er das evalen. Schaut also ca. so aus: while($data = mysql_fetch_array($query))
{
echo '<tr><td>';
if(ereg("#php", $data['aufbau']))
eval($data['aufbau']);
else
echo $data['aufbau'];
echo '</td></tr>';
}
Wenn die Schleife einmal durchlaufen wird und es wird eval() verwendet, funktionierts ja noch, aber beim zweiten Mal ist sense. Jetzt meine Frage: Wie bau ich das am besten auf? Soll ich das, was aus der DB kommt (egal ob Code oder Text) in einer Variable speichern (immer mit $output .= 'xyz') und am Schluss evalen oder gibt es eine bessere Variante?
Bearbeitet von tomstig am 10.10.2005, 23:25
|
tomstig
OC Addicted
|
Fehler gefunden: Im php-Code von $data['aufbau'] hab ich eine funktion gebastelt. Wenn ich jetzt das öfters eval, dann versucht der php interpreter die funktion öfters zu erstellen => Fehlermeldung (die interessanterweise am anfang nicht erschien) & Skriptabbruch...
file_exists() hat geholfen...
|
mat
AdministratorLegends never die
|
am besten keine programmlogik innerhalb eines templates ablaufen lassen.. und schon gar keinen php code.
|
tomstig
OC Addicted
|
Nein, nein, keine Sorgen
|