Domanda

Ho uno script PHP che prende i dati da un modulo HTML e lo invia in una e-mail con SwiftMailer. Quando un utente inserisce apostrofo o le virgolette in un campo di input (textarea), l'e-mail simile a questa:

ingresso

Modulo: PLD del marito

E-mail ricevute Ricevute: Marito \ 's PLD

ingresso

Modulo: di PLD "snack" "vecchio"

E-mail ricevuto: pld \ 's \ "snack \" \ "vecchio \"

V'è una certa convalida e servizi igienico-sanitari in corso nel mio script:

if ($_POST['form_message'] != "") {
        $form_message = filter_var($_POST['form_message'], FILTER_SANITIZE_STRING, FILTER_FLAG_NO_ENCODE_QUOTES);
        if ($_POST['form_message'] == "") {
            $errors .= 'Please enter a valid comment.<br/><br/>';
        }
    } else {
        $errors .= 'Please enter your comment.<br/>';
    }

Ecco la parte Swiftmailer:

$message->setBody("Here is the information submitted to 

www.polycystic-kidneydisease.com/html/contact_email.php da $ ip il $ date. \ n \ n -------------------------------- \ n \ n Nome: $ nome \ n \ n indirizzo e-mail: e-mail $ \ n \ n Oggetto: $ form_subject \ n \ n Commento: $ form_message ");

Come posso risolvere il problema? Grazie!

È stato utile?

Soluzione

magic_quotes_gpc è abilitato. Se è possibile disattivarlo, si consiglia di farlo; in caso contrario, utilizzare stripslashes() sull'ingresso prima di fare la vostra filtraggio.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top