" und ' in einem im gesamten $_POST escapen
Ralf
- php
Hi,
ich habe ein Formular mit einigen Textfeldern die ich an ein php script sende.
Aus den values der Textfelder soll eine mysql query gebaut werden.
Damit vom Benutzer eingegebene " bzw ' keine Fehler erzeugen escape ich sie so:
$foo = str_replace("'", "\\'", $_POST['foo']);
Wie kann ich alle " und ' in allen Elementen von $_POST escapen ohne das für alle Elemente einzeln zu machen?
MfG
Ralf
hi,
ich habe ein Formular mit einigen Textfeldern die ich an ein php script sende.
Aus den values der Textfelder soll eine mysql query gebaut werden.
Damit vom Benutzer eingegebene " bzw ' keine Fehler erzeugen escape ich sie so:
$foo = str_replace("'", "\\'", $_POST['foo']);
Wie kann ich alle " und ' in allen Elementen von $_POST escapen ohne das für alle Elemente einzeln zu machen?
http://php.net/manual/de/function.mysql-real-escape-string.php
bzw. überhaupt aus der StandardPHPLibrary die prepared statements nutzen ...;
mfg
tami
Tach!
bzw. überhaupt aus der StandardPHPLibrary die prepared statements nutzen ...;
Prepared Statements gibt es auch unter in der mysqli-Extension, ansonsten heißt die DBMS-Abstraktion PDO und nicht die SPL.
dedlfix.
Hello,
ich habe ein Formular mit einigen Textfeldern die ich an ein php script sende.
Aus den values der Textfelder soll eine mysql query gebaut werden.
Damit vom Benutzer eingegebene " bzw ' keine Fehler erzeugen escape ich sie so:
$foo = str_replace("'", "\\'", $_POST['foo']);
Wie kann ich alle " und ' in allen Elementen von $_POST escapen ohne das für alle Elemente einzeln zu machen?
mittels der dafür vorgesehenen Kontext-Funktion. Bei MySQL und PHP wäre das dann z.B.:
http://de2.php.net/manual/en/function.mysql-escape-string.php
http://de2.php.net/manual/en/function.mysqli-escape-string.php
http://de2.php.net/manual/en/function.mysql-real-escape-string.php
http://de2.php.net/manual/en/mysqli.real-escape-string.php
Bitte genau lesen, welche Funktion nun zutreffend ist, oder ob sogar eine Methode (OOP) benutzt werden muss.
Außerdem dann dringend lesen:
http://wiki.selfhtml.org/wiki/Artikel:Kontextwechsel
Und dann die Array-Funktionen anschauen, z.B.:
http://de2.php.net/manual/en/function.array-map.php
Du müsstest das $_POST-Array dann rekursiv durcharbeiten, da es sowohl Strings, als auch Sub-Arrays enthalten kann.
Liebe Grüße aus dem schönen Oberharz
Tom vom Berg