Häufige Fehlerquelle bei mysql_real_escape_string()

Published 2006-07-19, 23:16

mysql_real_escape_string() sollte ja auf jeden String angewendet werden, der in die Datenbank eingetragen wird. Mehrmals passierte es mir nun schon, dass ich auf neuen Servern nach der Ausführung eines Scriptes den Backslash auch in der Datenbank wiederfand. Grund:

Falls Sie magic_quotes_gpc aktiviert haben und mit Daten aus Benutzereingaben arbeiten, müssen Sie vorher Ihre Daten mit stripslashes() behandeln.

So einfach. Muss es mir nur merken. Und den Apache nach der Änderung neu starten.

Topic(s): MySQL, PHP 2 comments - :)

Diskussion zum Artikel

» Selbst kommentieren

  1. ( 1 )

    Cleverer wäre einfach ein kleine Funktion zu schreiben die auf magic quotes prüft und entsprechend dann strip_slashes benutzt oder auch nicht bevor der script escaped wird.

    In der Hilfe auf php.net habe ich sowas neulich gesehen.

    Comment von Doki am 25. Juli 2006

  2. ( 2 )

    Natürlich, der Aufwand lohnt sich jedoch kaum wenn man nur ein fertiges Script installieren möchte.

    Comment von Jan am 25. Juli 2006

Selbst kommentieren

Trackback-URI, Kommentarfeed. XML-Feed





17 queries. 0,100 seconds.