2013-04-09 46 views
0

我使用Dreamhost的我的邮件附加参数PHP的邮件功能。 我有一个PHP邮件函数附加头参数的问题。 此代码的工作,并发送电子邮件:关于页眉

$to = '[email protected]'; 
$name = $_POST['name']; 
$email = $_POST['email']; 
$subject = $_POST['subject']; 
$message = $_POST['message']; 
$headers = "From: $name <**[email protected]**>\r\n" . 
    "Reply-To: $name <**[email protected]**>\r\n" . 
    'X-Mailer: PHP/' . phpversion(); 
mail($to, $subject, $message, $headers); 

但是当我更换[email protected]变量$电子邮件

$headers = "From: $name <**$email**>\r\n" . 
    "Reply-To: $name <**$email**>\r\n" . 
    'X-Mailer: PHP/' . phpversion(); 

电子邮件不会发送。我做了一个print_r($ _ POST),并且元素在那里。我还做了另外一个测试,我键入的电子邮件:[email protected]到表单中,看它是否会送的,它做到了。所以我的问题是,我该如何解决这个问题,如果用户键入他们的电子邮件地址与其他邮件扩展形式,该邮件不会被发送,但如果扩展名是@ example.com,那么邮件就会被发送。

回答

0

$名称变量应该是充分EMAILADDRESS:

“$名称=” '名称' [email protected]>“
$标题= ”来自:$从\ r \ n“ 个;

作品在我的服务器,加入领先<到电子邮件addtress,该系统将根本不显示的字符串,如果我有它。如果你的形式已经为你就得给应答越南和电子邮件地址不同的变量将它们连接在正确的甲酸得到$名

+0

'$名称= “名称<[email protected]>”;' - RFC2822 – 2014-12-04 07:43:05