2016-10-19 18 views
0

私はHTMLフォームを作成しています(Swift Mailerを使用してプレーンテキストメールを送信していますが、現在重要ではありません)。私は実際にメールを送信する前に、最終的に確認するためにユーザーのテキスト入力を表示したいと思います。PHP:投稿されたフォームテキストを投稿用の隠し入力フィールドに再度出力

nl2br(htmlspecialchars())私は安全にユーザーのフォームフィールドの入力を表示し、その入力を<input type="hidden" ../>フォームフィールドに出力して、実際に電子メールを作成するために再度送信する必要があります。

電子メール本文には、一重引用符、二重引用符、アンパサンド、小文字、大なり記号など、あらゆる種類の潜在的に面倒な文字が含まれていることは明らかです。

私の唯一の(?)問題は、フォームの引用符がvalue=".."(私は通常二重引用符を使用しています)と入力文字列の値の引用符を使用していないことを保証していると思います。お互いにぶつかりませんか?必要に応じて引用符をエスケープするhtmlspecialcharsと同様の行にPHP関数がありますか?私が送信する電子メールはプレーンテキストなので、何もHTMLエンティティに変換したくありません。私は「比較的」(安全フォームフィールドのための私のテキストをエンコードするためにhtmlspecialchars($text, ENT_QUOTES)を使用して、使用することができているかのように

答えて

0

を使用する必要があり、それが見えます新しい対応する逆関数)htmlspecialchars_decode($text, ENT_QUOTES)平文の電子メールメッセージを作成するときに、HTMLエンティティを安全に元の文字に戻すことができます。

+0

なぜあなたは最終的に、**あなたが質問を投稿した後、長く続くことのない回答を提供するセクションを見つけ出すのですか? – dave559

+0

これが正しいまたは最も適切な解決策でない場合は、私はまだ他のどんな回答にも感謝しています。ありがとう! – dave559

関連する問題