Antworten auf deine Fragen:
Neues Thema erstellen

PHP-skript in Datenbank - auslesen funktioniert nicht richtig

d3mueller

PC-Freak :D

Hi, hab mal wieder ein kleines Problem :D

Habe in der datenbank folgendes eingetragen:

Code:
<a href="index.php?suche=<?php if(isset($_GET['suche'])) { echo $_GET['suche']; } ?>&box=ja">Klick</a>

Jetzt hab ich es per PHP aus der Datenbank ausgelesen, aber er "wandelt" das PHP nicht um. Es steht noch im Browser als Klartext im Quelltext. Und dieser Link existiert ja nicht, also kommt eine Fehlermeldung.
Im Quelltext(von chrome geöffnet) steht das hier:

Code:
<a href="index.php?suche=<?php if(isset($_GET['suche'])) { echo $_GET['suche']; } ?>&box=ja">Klick</a>

Eig. sollte man das PHP ja nicht sehen.

Weiß jemand, woran das liegt?

LG
 

Robbyn-

PHP / Flex Programmierer

AW: PHP-skript in Datenbank - auslesen funktioniert nicht richtig

HTML Datei, direkter Aufruf im Browser über file::/// gibt viele möglichkeiten, Scheint aber so zu sein, das er den PHP Code nicht kompiliert.
 

Robbyn-

PHP / Flex Programmierer

AW: PHP-skript in Datenbank - auslesen funktioniert nicht richtig

Naja das es entwdder eine HTML Datei sit z.b. heißt sie
index.html
oder das du die Datei wie im Datein browser aufrufst z.b. so:
file:///C|/Project/index.php
Das solch eine URL im Browser steht.
 

hub

nicht ganz neu hier

AW: PHP-skript in Datenbank - auslesen funktioniert nicht richtig

Moin moin,
hast du es mal mit "urldecode" oder "stripslashes" versucht? Das sollte eigentlich so funktionieren, solange du keinen ausführbaren Code aus der DB holst. Da würde dir "eval()" weiterhelfen. Damit solltest du dann aber vorher sehr genau prüfen, was du da übergibst.

Gruß Ulli
 

d3mueller

PC-Freak :D

AW: PHP-skript in Datenbank - auslesen funktioniert nicht richtig

ah ok.

Ne, ist eine .php.

Und ich rufe sie auf nicht so auf, sondern normal auf der Webseite (virtueller Server mit Xampp)
 

hub

nicht ganz neu hier

AW: PHP-skript in Datenbank - auslesen funktioniert nicht richtig

Sorry, noch mal ich, erst Brille putzen, dann antworten. Ich denke, das es eval() ist, was du da brauchst. Der Interpreter weiss sonst nichts mit dem Code anzufangen, darum steht das unverändert in deinem generierten Browser-Code.


Gruß Ulli
 

d3mueller

PC-Freak :D

AW: PHP-skript in Datenbank - auslesen funktioniert nicht richtig

Hi,
sry hab deinen ersten Post gar nicht gesehen, weil ich da schon am Antowrten war :D

Danke, ich versuchs mal mit eval().
 

d3mueller

PC-Freak :D

AW: PHP-skript in Datenbank - auslesen funktioniert nicht richtig

So, hab ein Beispiel gefunden, wie das geht, aber ich blicke es irgendwie nicht xD

Quelle: http://www.w3schools.com/php/func_misc_eval.asp

Code:
<?php
$string = "beautiful";
$time = "winter";

$str = 'This is a $string $time morning!';
echo $str. "<br />";

eval("\$str = \"$str\";");
echo $str;
?>

Die stelle verstehe ich nicht: eval("\$str = \"$str\";");. Warum kommt da 2x der String? Muss ich da dann auch irgendwie 2x $row['code] benutzen?
 

hub

nicht ganz neu hier

AW: PHP-skript in Datenbank - auslesen funktioniert nicht richtig

Nö, musst du nicht. Ich finde das dortige Beispiel etwas unglücklich gewählt. Hier wird eine gleichnamige "zukünftige" Variable mit einer gleichnamigen, schon bestehenden Variable gefüllt. Bei dir wird es etwas komplexer, da du ja Html-Code mit Php-Code gemischt hast. Einen Lösungsansatz für dein Problem habe ich hier gesehen: .

Gruß Ulli
 

Duddle

Posting-Frequenz: 14µHz

AW: PHP-skript in Datenbank - auslesen funktioniert nicht richtig

Warum kommt da 2x der String?
Weil das Beispiel so konstruiert wurde.

PHP:
<?php
eval("echo 'hello world';");
?>
Wenn du dieses Beispiel verstehst, verstehst du eval() - und hoffentlich auch, warum es sehr gefährlich sein kann.


Duddle
 

hub

nicht ganz neu hier

AW: PHP-skript in Datenbank - auslesen funktioniert nicht richtig

Ich habe noch eine Kurze Anmerkung. Duddle hat dich auch noch einmal eindringlich darauf hingewiesen: so kurz das Wörtchen eval ist, so gefährlich ist es auch. Ich würde mir an deiner Stelle überlegen, diesen Part deines Vorhabens zu überdenken und in Betracht ziehen, keinen ausführbaren Code in der DB zu speichern. Templates oder ähnliches, ja, wenns dann in die DB soll. Aber das andere kann böse nach hinten loß gehen. Beispiele dafür gibt es leider.

Genug genervt, gruß Ulli
 

d3mueller

PC-Freak :D

AW: PHP-skript in Datenbank - auslesen funktioniert nicht richtig

Hmm, okay, habe eine Alternative Lösung gefunden.
Dann lass ich eval() lieber.

Aber trotzdem danke :D
 
Bilder bitte hier hochladen und danach über das Bild-Icon (Direktlink vorher kopieren) platzieren.
Antworten auf deine Fragen:
Neues Thema erstellen

Willkommen auf PSD-Tutorials.de

In unseren Foren vernetzt du dich mit anderen Personen, um dich rund um die Themen Fotografie, Grafik, Gestaltung, Bildbearbeitung und 3D auszutauschen. Außerdem schalten wir für dich regelmäßig kostenlose Inhalte frei. Liebe Grüße senden dir die PSD-Gründer Stefan und Matthias Petri aus Waren an der Müritz. Hier erfährst du mehr über uns.

Stefan und Matthias Petri von PSD-Tutorials.de

Nächster neuer Gratisinhalt

03
Stunden
:
:
25
Minuten
:
:
19
Sekunden

Flatrate für Tutorials, Assets, Vorlagen

Zurzeit aktive Besucher

Statistik des Forums

Themen
118.635
Beiträge
1.538.477
Mitglieder
67.559
Neuestes Mitglied
hanuta
Oben