php mail()删除CC,BCC和安全性

时间:2012-09-07 21:32:20

标签: php email

我是stackoverflow的新手,无法找到我的问题的答案。如何在php中保护我的mail()代码以防止人们添加最终会导致群发邮件的密件抄送?我的网站使用PHP mail()服务在我的网站上输入新评论时给我发电子邮件。防止人们篡改它的最佳方法是什么,例如删除密送?到目前为止我所拥有的是:

function mres($input){
if (get_magic_quotes_gpc()){
    $input = stripslashes($input);
}
return mysql_real_escape_string($input);
}
$name = strip_tags(mres($_POST['name']));
$comment = strip_tags(mres($_POST['comment']));

$to = 'myself@gmail.com';
$subject = 'Website - comment';
$body = 'A new comment has been entered on the website.'."\n\n"."$name".' said:         '."\n\n"."$comment";
mail($to,$subject,$body);

2 个答案:

答案 0 :(得分:0)

我会看http://mailgun.com/

之类的东西

实际上,如果您只使用mail()

,您的邮件通常会以人们的垃圾邮件结束

答案 1 :(得分:0)

假设此代码后跟:

mail($to, $subject, $body);

然后它是安全的,如果过度杀伤 - mail()易受注入的唯一参数是控制标题字段($to$subject和{{1}的参数})。 $additional_headersstrip_tags都是不必要的,后者会在您的电子邮件中将撇号显示为mysql_real_escape_string

如果没有跟随\'的电话,那么这是非常安全的,因为它没有做任何事情。 :)