我有一个 PHP 脚本,它从 HTML 表单中获取数据并使用 SwiftMailer 将其发送到电子邮件中。当用户在输入字段 (textarea) 中输入撇号或引号时,电子邮件看起来像这样:
表格输入:丈夫的PLD
收到的电子邮件:丈夫的PLD
表单输入:pld的“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
www.polycystic-kidneydisease.com/html/contact_email.php 来自 $ip 于 $date。\n\n -------------------------- ------\n\n 姓名:$name \n\n 电子邮件地址:$email \n\n 主题:$form_subject \n\n 评论:$form_message");
我如何解决它?谢谢!