Code in Datenbank schreiben

Hallo,

Ich habe mir für mein kleines CMS eine eigene Datenbankverwaltung in PHP geschrieben.
Als ich allerdings die Templates in der Tabelle „xgs_pages“ ändern wollte, nahm er die Änderungen nicht an. Nach einigem ausprobieren wurde klar: Er mag PHP-Code und HTML nicht.
htmlentities() brachte bisher nichts, egal an welcher Stelle.
Ich lasse die Daten per Formular und mit POST an sich selbst schicken, der Code zum Eintragen ist dieser:

$aendern = „UPDATE xgs_pages Set cat = '“.$_REQUEST[‚cat‘]."’, content = ‚".$_REQUEST[‚content‘]."‘ WHERE id = ‚".$acp[‚s‘]."‘";
$aender = mysql_query($aendern);

Änderungen an Tabelleneinträgen ohne Code oder HTML funktionieren ohne Probleme.
Ich bin für jede Hilfe dankbar.

Grüße,
Peter

Hi Peter,

Er mag PHP-Code und HTML nicht.

Du musst alle Strings mit mysql_real_escape_string() escapen, bevor Du sie in die Datenbank schreibst - nicht einfach mit dem rohen Request-Wert die Query zusammenstückeln, das ist auch noch extrem unsicher (SQL-Injections), selbst wenn die Query funktionieren sollte.

Ciao,
Rudy

Hi, Rudy

Vielen Dank für die schnelle Lösung, hat wie nicht anders erwartet, super funktioniert.

Die Sache mit den SQL-Injections bin ich noch garnicht angegangen, da das ganze bisher nur auf dem Localhost zum Einsatz kam. Werde mir aber meinen Code in der Richtung nochmal anschauen.

Nochmals vielen Dank.

Grüße,
Peter