1

HTML フォームからデータを取得し、SwiftMailer を使用してメールで送信する PHP スクリプトがあります。ユーザーが入力フィールド (テキストエリア) にアポストロフィまたは引用符を入力すると、電子メールは次のようになります。

フォーム入力: 夫の PLD

受信したメール: 夫の PLD

フォーム入力: pld's "snack" "old"

メール受信: pld\'s \"snack\" \"old\"

私のスクリプトでは、いくつかの検証とサニテーションが行われています。

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/>';
    }

Swiftmailer の部分は次のとおりです。

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

$date に $ip から www.polycystic-kidneydisease.com/html/contact_email.php。\n\n -------------------------- ------\n\n 名前: $name \n\n メールアドレス: $email \n\n 件名: $form_subject \n\n コメント: $form_message");

どうすれば修正できますか?ありがとうございました!

4

1 に答える 1

5

magic_quotes_gpc有効になっているようです。無効にできる場合は、無効にすることをお勧めします。そうでない場合は、stripslashes()フィルタリングを行う前に入力で使用します。

于 2011-01-24T04:03:33.333 に答える