ik voeg alles in de d toe via mysql_real_escape_string( en in .htaccess staat magic quotes af: php_flag magic_quotes_gpc off

Maar dan voegt hij in de db gewoon ' en " zonder / ervoor.

Als ik de php_flag magic_quotes_gpc off weglaat, dan voegt hij het wel toe in de db als /', maar dan geeft hij het natuurlijk ook zo weer...

Al vanalles zitten lezen, maar doe toch ergens iets mis blijkbaar. Vroeger werkte ik altijd met addslashes() en stripslashes().
maks schreef op 01.11.2008 17:09
ik voeg alles in de d toe via mysql_real_escape_string( en in .htaccess staat magic quotes af: php_flag magic_quotes_gpc off

Maar dan voegt hij in de db gewoon ' en " zonder / ervoor.

Das toch goed...
Maar dan voegt hij in de db gewoon ' en " zonder / ervoor.
En waarom zou je die slashes er dan zo graag inwillen?

Het gaat erom dat gevaarlijke tekens geëscaped zijn op het moment dat ze in de query staan, maar in je database wil je die slashes natuurlijk niet terug zien...

Dan had ik dus echt het doel van addslashes vroeger ook verkeerd op... Ik dacht dat dat met het doel was om het in de database te voorkomen, om geen schade te kunnen uitrichten.. maar inderdaad: het is enkel gevaarlijk bij een query omdat daar de actie plaatst heeft.

Bedankt voor de verduidelijking.
addslashes() is dan ook een functie die je niet wilt gebruiken omdat die je data alleen maar verkloot. Je zult achteraf altijd nog met stripslashes aan de gang moeten om al die overbodige slashes weer te verwijderen...

Reageren