Hallo aitee,
... aber das prüft doch nur ob im String ein "%20" oder ein "_" vorhanden ist ... ??
Die Escaping-Routinen escapen einen String, so dass er in der entsprechenden Datenbank-Umgebung keine besondere Bedeutung mehr hat. So wird z. B. aus dem SQL-Statement (SQL-Injection!)
"SELECT * FROM blahr WHERE y = "x"; delete * from geheim where "a" = "a";
sobald er durch mysql_escape_string gelaufen ist folgendes:
"SELECT * FROM blahr WHERE y = "x"; delete from geheim where "a" = "a";
Siehst du den wichtigen(!) Unterschied? Die erste Query wurde durch eine
SQL-Injection manipuliert, in der zweiten dagegen konnte die Attacke abgefangen
werden.
Grüße,
CK
--
Unsere Vorstellungen von der Ewigkeit sind genauso nuetlich wie die Mutmassungen eines Kuehkens ueber die Aussenwelt bevor es die Eierschale aufbricht.
Unsere Vorstellungen von der Ewigkeit sind genauso nuetlich wie die Mutmassungen eines Kuehkens ueber die Aussenwelt bevor es die Eierschale aufbricht.