Hvis du henter dine $content-data fra en formular (og ikke "som det er" i PHP-koden) , måske har du et problem på grund af magiske citater (se magic_quotes_gpc
)
Grundlæggende :
Hvis magiske citater er aktiveret (du kan tjekke dette i outputtet af phpinfo()
, for eksempel) , vil du få den slags "dobbeltflugt" :
- Disse karakterer vil blive undsluppet én gang af magiske citater,
- Og så bliver de undslippet en anden gang af
mysql_real_escape_string
Den gode løsning i dette tilfælde er ikke at stoppe med at bruge mysql_real_escape_string
, men for at deaktivere magic_quotes_gpc i din konfiguration...
... Men da du ikke har adgang til det, bliver du faktisk nødt til at "vende tilbage" effekten af magiske citater ved at kalde stripslashes
på det input, du får som $_GET
og $_POST
, før du begynder at bruge det.
Bemærk:det er et råd, der er givet på manualsiden til mysql_real_escape_string
(citat) :