PHP-Code ausführen, welcher in mySQL-DB gespeichert ist?

PHP-Code ausführen, welcher in mySQL-DB gespeichert ist?

am 23.11.2006 22:34:58 von Walter Kerelitsch

hallo folks,

bin erst am evaluieren, ob mein Denkansatz Sinn gibt..
Ich habe in einer mysql-DB Texte, welche ich in einer webapplikation
nacheinander ausgebe.

Jetzt möchte ich auf *einer* Textseite (also in der Datenbank) PHP-Code
einbauen, der ein File-Upload ermöglicht.
Wenn ich das tue, wird mir der SQL-Code brav am Schirm angezeigt, aber
(natürlich) nicht ausgeführt.

Wie erreiche ich, dass der PHP-Code trotzdem ausgeführt wird? Geht das
überhaupt? Na ja, mit PHP geht ja fast alles ;.))

Oder soll ich einen anderen Weg beschreiten und das ganze diskret in meiner
Applikation programmieren?

lg und danke schon mal im voraus
walter

Re: PHP-Code ausführen, welcher in mySQL-DB gespeichert ist?

am 23.11.2006 23:16:00 von Michael Fesser

..oO(Walter Kerelitsch)

>bin erst am evaluieren, ob mein Denkansatz Sinn gibt..

Der Betreffzeile nach zu urteilen eher nicht.

>Ich habe in einer mysql-DB Texte, welche ich in einer webapplikation
>nacheinander ausgebe.

Soweit kein Problem.

>Jetzt möchte ich auf *einer* Textseite (also in der Datenbank) PHP-Code
>einbauen, der ein File-Upload ermöglicht.

Aber hier hakts: Was hat der Upload-Code in der Datenbank verloren?
Wenn, dann gehörte da der HTML-Code zum Erzeugen des Formulars hin.

>Wie erreiche ich, dass der PHP-Code trotzdem ausgeführt wird? Geht das
>überhaupt? Na ja, mit PHP geht ja fast alles ;.))

Es geht, ist aber häßlich und in den meisten Fällen ein deutliches
Zeichen für alles mögliche, nur nichts Gutes. Das Stichwort ist eval().

>Oder soll ich einen anderen Weg beschreiten und das ganze diskret in meiner
>Applikation programmieren?

Wäre wohl besser.

Micha

Re: PHP-Code ausführen, welcher in mySQL-DB gespeichert ist?

am 23.11.2006 23:42:52 von Walter Kerelitsch

"Michael Fesser" schrieb im Newsbeitrag
news:117cm2tcltcv13d6hcpo7adhbcjkb45ohb@4ax.com...

>>Jetzt möchte ich auf *einer* Textseite (also in der Datenbank) PHP-Code
>>einbauen, der ein File-Upload ermöglicht.
>
> Aber hier hakts: Was hat der Upload-Code in der Datenbank verloren?
> Wenn, dann gehörte da der HTML-Code zum Erzeugen des Formulars hin.
>

ich war unklar: ich möchte in einer sequenz zwei seiten ausgeben:
die eine zum erstellen des formulars für den upload (die hab ich ja schon),
hat kein php.
die zweite zum uploaden (move_uploaded....), diese macht mir das problem.


>>Wie erreiche ich, dass der PHP-Code trotzdem ausgeführt wird? Geht das
>>überhaupt? Na ja, mit PHP geht ja fast alles ;.))
>
> Es geht, ist aber häßlich und in den meisten Fällen ein deutliches
> Zeichen für alles mögliche, nur nichts Gutes. Das Stichwort ist eval().
>

meinst Du, ist es unsicher?? eval() muss ich mir ansehen. aber Du rätst
ab...

>>Oder soll ich einen anderen Weg beschreiten und das ganze diskret in
>>meiner
>>Applikation programmieren?
>
> Wäre wohl besser.
>

aha. verstehe. s.o.

> Micha

danke!
walter

Re: PHP-Code ausführen, welcher in mySQL-DB gespeichert ist?

am 24.11.2006 00:29:52 von Niels Braczek

Walter Kerelitsch schrieb:

> bin erst am evaluieren, ob mein Denkansatz Sinn gibt..

Schön, dass du kommst, bevor das Kind in den Brunnen gefallen ist.

> Jetzt möchte ich auf *einer* Textseite (also in der Datenbank) PHP-Co=
de=20
> einbauen, der ein File-Upload ermöglicht.
> Wenn ich das tue, wird mir der SQL-Code brav am Schirm angezeigt, aber =

> (natürlich) nicht ausgeführt.
>=20
> Wie erreiche ich, dass der PHP-Code trotzdem ausgeführt wird? Geht da=
s=20
> überhaupt? Na ja, mit PHP geht ja fast alles ;.))

Es geht, aber das willst du nicht.

> Oder soll ich einen anderen Weg beschreiten und das ganze diskret in me=
iner=20
> Applikation programmieren?

Ja. Setze an die Stelle im Text eine Markierung, zB. {upload}.
Baue in deiner Applikation den HTML-Code für den Upload zusammen und
ersetze während der Ausgabe das {upload} durch diesen Code.

Damit behältst du zu pflegenden Code an einer Stelle. Du kannst den Tex=
t
ändern (lassen), ohne dass deine Anwendung kaputt geht. Du kannst zB.
die Upload-Funktion ändern, ohne den Text anfassen zu müssen. Du kann=
st
den Upload über das simple {upload} in jede beliebige Textseite
einbauen. Du bist Alles in Allem wesentlich flexibler (und zudem sauberer=
).

MfG
Niels

--=20
| http://www.kolleg.de =B7 Das Portal der Kollegs in Deutschland |
| http://www.bsds.de =B7 BSDS Braczek Software- und DatenSysteme |
| Webdesign =B7 Webhosting =B7 e-Commerce =B7 Joomla! Content Management =
|
------------------------------------------------------------ ------

Re: PHP-Code ausführen, welcher in mySQL-DB gespeichert ist?

am 24.11.2006 14:20:04 von Michael Fesser

..oO(Walter Kerelitsch)

>ich war unklar: ich möchte in einer sequenz zwei seiten ausgeben:
>die eine zum erstellen des formulars für den upload (die hab ich ja schon),
>hat kein php.
>die zweite zum uploaden (move_uploaded....), diese macht mir das problem.

Schon klar, nur was hat der PHP-Code in der Datenbank verloren? Du
kannst den Dateiupload auch mit einem eigenständigen kleinen Skript
bearbeiten, welches dann im Anschluß z.B. auf eine Seite Deiner
Applikation weiterleitet.

>meinst Du, ist es unsicher?? eval() muss ich mir ansehen. aber Du rätst
>ab...

Nicht per se unsicher, aber doch reichlich ineffizient und in den
meisten Fällen völlig unnötig.

Micha

Re: PHP-Code ausführen, welcher in mySQL-DB gespeichert ist?

am 27.11.2006 23:05:18 von Walter Kerelitsch

vielen Dank Niels,
für die Anregung mit dem 'Code-einsetzen', aber ich werds ganz simpel so
machen, wie ichs auch schon im Test laufen habe, nämlich mit einem eigenen
separaten skript.

lg Walter

Re: PHP-Code ausführen, welcher in mySQL-DB gespeichert ist?

am 27.11.2006 23:06:43 von Walter Kerelitsch

"Michael Fesser" schrieb im Newsbeitrag
news:51sdm257r7cnng3ddmhcpu9btke0qc1nhg@4ax.com...
> Schon klar, nur was hat der PHP-Code in der Datenbank verloren? Du
> kannst den Dateiupload auch mit einem eigenständigen kleinen Skript
> bearbeiten, welches dann im Anschluß z.B. auf eine Seite Deiner
> Applikation weiterleitet.
>

ja, danke, denke auch, dass das so am einfachsten ist. und werds auch so
umsetzen.

danke und lg
walter