Der Martin: Frage zu mysql_real_escape_string();

Beitrag lesen

Hallo,

ich trage in meine mysql-Tabelle Daten per Formular ein und behandel sie kontextgerecht mit mysql_real_escape_string($Variable).
Wenn ein User nun Zitat: "blabla" einträgt, steht in meiner Tabelle Zitat: "blabla". Heißt also, die Funktion escaped die ".

das tut mysql_real_escape_string() zwar tatsächlich; aber mySQL macht diese Maskierung intern wieder rückgängig, bevor die Daten eingetragen werden. In der Tabelle sollten also Rohdaten landen.

Ist das so gedacht?

Nein, klingt nach der PHP-Krankheit magic_quotes. Wenn das aktiviert ist, maskiert PHP selbständig alle Anführungszeichen, bevor das Script diese Daten bekommt - egal ob es sinnvoll ist oder nicht (meistens eher nicht).

Ciao,
 Martin

--
Arzt:    Gegen Ihr Übergewicht hilft wohl nur noch Gymnastik.
Patient: Sie meinen, Kniebeugen und so?
Arzt:    Nein, Kopfschütteln. Immer dann, wenn Ihnen jemand was zu essen anbietet.
Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(