phpbar.de logo

Mailinglisten-Archive

Re: [php] Formulareingaben für MySQL sicher machen

Re: [php] Formulareingaben für MySQL sicher machen

Gloss Mathias Mathias.Gloss at start.de
Don Aug 21 19:37:05 CEST 2003


Aloha,

> Von: 	Andreas Bender[SMTP:liste at bender.li]
> 
> Ich habe magic-quotes-gpc auf ON stehen, 
> 
... das sorgt dafür, daß bei allen Werten, die über
Get, Post und Cookie reinkommen, ein ' escaped wird
mit \'

... also passenderweise schon richtig für die Datenbank
vorbehandelt (was das ' angeht).

> Jetzt habe ich aber das Problem, wenn ich den User wegen fehlerhaften
> Eingaben zum Formular zurück schicke, hat er die escapten Zeichen im
> Formular und beim erneuten Absenden werden die escapten Zeichen ein
> weiteres mal escapt.
> sieht dann so aus:
> aus 
> andrea's
> wird
> andrea\'s
> 
Du hast vergessen stripslashes() anzuwenden, damit das
bei der Ausgabe auch wieder rückgängig gemacht wird.

Falls deine Anwendung portabel sein soll, solltest du
überprüfen ob magic quotes gpc an ist, und wenn nicht,
musst du vor dem Abspeichern in der DB addslashes()
verwenden.

> der Wirkung nach brauche ich
> dann gar kein mysql_escape_string() mehr.
> 
mysql_escape_string() scheint noch etwas mehr zu machen.
Geschickterweise geht das mal wieder nicht aus dem PHP-
Manual hervor, aber bei den User Contributed Notes auf

http://de.php.net/mysql_escape_string

stehen da ein paar interessante Hinweise dazu.


Grüße & schönen Feierabend,

Mathias


php::bar PHP Wiki   -   Listenarchive