php - Inhalt einer Variable als Code verarbeiten

Neue Frage »

Auf diesen Beitrag antworten »
InformaTiger php - Inhalt einer Variable als Code verarbeiten

Hallo,
ich habe bereits ein wenig gegoogelt, nur leider hatte ich irgendwie keine Ahnung nach was ich eigentlich genau suchen sollte wenn ich folgendes erreichen möchte.
Gibt es irgendeine Möglichkeit so etwas:
code:
1:
2:
3:
4:
<?php
     $erg = "<p>viel text, viel text, viel text<a href="?p=<?php echo $id; ?>">Link</a>viel text, viel text, viel text.</p>";
     echo $erg;
?>

zu verarbeiten. Das heißt mein Ziel ist es die Variable $erg welche das Ergebnis einer Mysql-Abfrage als php-Code vom Server verarbeiten zu lassen. Dies möchte ich tun da ich den Code für die Webseite ähnlich einem CMS in der Datenbank speichere.

Danke schon im voraus.

smile

Mfg
InformaTiger
 
Auf diesen Beitrag antworten »
Karlito

Hallo Informatiger,

schau dir mal eval() an: http://php.net/manual/de/function.eval.php.

Aber sei Dir bitte der Sicherheitsrisiken bewusst. Du musst sicherstellen, dass kein Fremdcode ausgeführt werden kann.

Gruß,

Karlito
Auf diesen Beitrag antworten »
InformaTiger

Hallo Karlito,
genau nach so einer Funktion hatte ich gesucht. Sicherheit ist ein großes Thema: ich hätte mir gedacht, dass ich meinen kompletten Code in eine Datenbank auslagere und ihn dann jenach Seitenid aus der Datenbank lese.
code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
<?php
	// Zur Datenbank verbinden
	mysql_connect('localhost','root','root') or die(mysql_error());
	mysql_select_db('db_it_01') or die(mysql_error());
	// Seiteninhalt auslesen
	$result = mysql_query('SELECT content FROM `tbl_pages` WHERE page_id=' . $id . ' AND language="' . $lang . '";');
	while($row = mysql_fetch_array($result))
	{
		echo eval($row[0]);
	}
	mysql_close();
?>

Dasselbe Prinzip hätte ich dann für andere Dinge auf der Website auch angewand. Wenn das zu unsicher wäre hätte ich schon eine Zweitlösung: ich schreibe mir benötigte Werte einfach in Cookies
code:
1:
2:
setcookie('stl', $style); // Style in ein Cookie schreiben
setcookie('lng', $lang); // Sprache in ein Cookie schreiben
und habe sie dann auf gewünschten Seiten wie zum Beispiel der download.php auch zur Verfügung.

Mit freundlichen Grüßen
InformaTiger
 
Neue Frage »
Antworten »


Verwandte Themen

Die Beliebtesten »
Die Größten »
Die Neuesten »