Ciao a tutti, vi espongo il mio problema che nasce inviando un messaggio inserito attraverso un form che viene poi passato a php ed inviato attraverso la funzione
1) scrivo il messaggio nella texbox del form (es. Oggi c'è il sole)
2) submit, la variabile $testo_messaggio è passata al php (ho usato la stessa pagina del form, per la cronaca)
3) già in questa fase, facendo print($testo_messaggio) ottengo: Oggi c\'è il sole
4) come faccio a togliere la barra \ in modo che nell'email che mando il testo torni ad essere "Oggi c'è il sole"?
il problema è che la stringa non la definisco io, ma viene passata direttamente dal form attraverso il metodo POST, quindi credo che l'unica soluzione sia "processare" la stringa a posteriori. Forse...
Si tratta di un problema diffuso, che puoi risolvere agevolmente utilizzando apposite funzioni PHP.
Ecco il codice che uso in testa ad ogni pagina che riceve parametri inseriti dall'utente e che esegue appunto la pulizia dei parametri passati (tramite metodo POST in queso caso) dagli slash automaticamente aggiunti nel passaggio (va fatto solo nel caso sia attiva l'opzione 'magic_quotes_gpc'):
if (ini_get("magic_quotes_gpc"))
foreach ($_POST as $nome_parametro => $valore_parametro)
$_POST[$nome_parametro] = stripslashes($valore_parametro);