30-11-2007, 01:28 PM
Chiunque smanetti da un po' di tempo con il PHP sa certamente cos'è ed a cosa serve la direttiva "magic_quotes".
Per chi non lo sapesse, si tratta di una direttiva del PHP utilizzata per risolvere con facilità il problema degli apici (temibile soprattutto per chi lavora con MySQL) che vengono così preceduti da un carattere di backslash (\).
Capita talvolta, soprattutto se si utilizza un hosting condiviso, che le magic quotes siano disabilitate di default dall'amministratore di sistema... ma non preoccupatevi! Bastano poche righe di codice per ovviare a questo inconveniente!
Ecco quindi il codice da inserire nelle vostre pagine PHP per simulare le magic quotes:
Come avete visto per prima cosa ho verificato che magic_quotes_gpc (ndr: GPC sta per GET, POST, COOKIE) non sia settato su ON, in caso la direttiva sia settata su OFF procedo quindi ad usare la funzione array_map per passare tutti gli elementi dell'array alla funzione addslashes. Et voilà...
Da inserire alla fine del file controlla_pass.php!
[attachment=611]
Per chi non lo sapesse, si tratta di una direttiva del PHP utilizzata per risolvere con facilità il problema degli apici (temibile soprattutto per chi lavora con MySQL) che vengono così preceduti da un carattere di backslash (\).
Capita talvolta, soprattutto se si utilizza un hosting condiviso, che le magic quotes siano disabilitate di default dall'amministratore di sistema... ma non preoccupatevi! Bastano poche righe di codice per ovviare a questo inconveniente!
Ecco quindi il codice da inserire nelle vostre pagine PHP per simulare le magic quotes:
Codice PHP:
if (!get_magic_quotes_gpc()) {
$_GET = array_map('addslashes', $_GET);
$_POST = array_map('addslashes', $_POST);
$_COOKIE = array_map('addslashes', $_COOKIE);
}
Come avete visto per prima cosa ho verificato che magic_quotes_gpc (ndr: GPC sta per GET, POST, COOKIE) non sia settato su ON, in caso la direttiva sia settata su OFF procedo quindi ad usare la funzione array_map per passare tutti gli elementi dell'array alla funzione addslashes. Et voilà...
Da inserire alla fine del file controlla_pass.php!
[attachment=611]