XHTMLforum

XHTMLforum (http://xhtmlforum.de/index.php)
-   Serveradministration und serverseitige Scripte (http://xhtmlforum.de/forumdisplay.php?f=80)
-   -   PHP Code aus einer Datenbank beziehen und ausführen? (http://xhtmlforum.de/showthread.php?t=41680)

Zen5656 01.09.2006 00:28

PHP Code aus einer Datenbank beziehen und ausführen?
 
Moin

Hab mal ne Frage: Kann man irgendwie PHP Code den man in einer Datenbank gespeichert hat auslesen UND ausführen?

Also ich lese das ding mit SELECT aus aber wie krieg ichs dann zum laufen? Ist ja ein String usw...

Danke

MfG Zen

maruerru 01.09.2006 08:02

Hallo Zen,

der PHP-Befehl lautet "eval" und wertet einen String als PHP-Code aus.

Ich habe allerdings immer einen faden Beigeschmack bei der Nutzung des Befehls, da die enthaltenen Variablen gegen Code Injection gesichert werden müssen.

Warum den Code in eine DB?

Wie wär es stattdessen mit switch, das anschließend die Code-Snipplets includieren. Beim Hinzufügen von Code-Snipplets könnte dann noch der switch durch ein PHP-Script eingelesen und angepasst werden.

Gruß
maruerru

Zen5656 02.09.2006 01:06

Merci beaucoup: funtzt ;)

Zitat:

Warum den Code in eine DB?
Ich möchte den gesammten Code unterhalb meines Menücodes dynamisch einfügen. Wenn ich aber mal einen php code für etwas brauche muss ich trotzdem ne extra Datei erstellen... -> Alles soll über forms gehen


Also ich mach halt schon bei der eingabe eine prüfung auf injections... beim auslesen wird dann auch noch über str str gecheckt ob was böses drin ist.

Könnt ihr mir mal eine Liste machen welche dinger nicht gehen dürfen? Ich will nur auslesen aus einer db erlauben.

Verbieten tue ich derzeit:

DROP ALTER DELETE UPDATE MKDIR RMDIR UNLINK UNSET FWRITE

Was fällt euch noch ein?

MfG Zen

insanic! 03.09.2006 16:20

nicht mit ner blackliste arbeiten, sondern mit ner whiteliste ;)
wenn du eh nur selects erlauben magst, dann prüfe diese doch einfach mittels preg_match()!


Alle Zeitangaben in WEZ +2. Es ist jetzt 16:39 Uhr.

Powered by vBulletin® Version 3.8.11 (Deutsch)
Copyright ©2000 - 2024, vBulletin Solutions, Inc.

© Dirk H. 2003 - 2023