PHP邮件功能问题

时间:2012-11-27 09:46:46

标签: php

我正在尝试在成功注册后向用户发送电子邮件。以下是我的.php代码。

$to = $email;                       
$subject = "Signup | Verification";
$message = "Congratulation $f_name $l_name you have been successfully registered. Please 
click the link to active your account.\r\n";
$message .= "http://www.maaks.fr/hotel/verify.php?email=$email&hash=$hash\r\n";

$from = "noreply@yoursite.com";
$headers = "MIME-Version: 1.0\r\n";
$headers .= "Content-rype: text/html; charset=iso-8859-1\r\n";
$headers .= "Content-Transfer-Encoding; 7bit\r\n";
$headers = "From:" . $from . "\r\n";

$sentmail = mail($to,$subject,$message,$headers);                   
if($sentmail)
{
header("Location: thankyou.php?member=successfully");
exit();
}

它没有向用户发送电子邮件。我查了一下,如果 $ sentmail 没问题,那就去 thankyou 页面了。但有趣的是,如果没有发送电子邮件,它会转到 thankyou 页面。

有什么我忘记的吗?

2 个答案:

答案 0 :(得分:3)

如果邮件被接受传递,mail()函数将返回true,这并不意味着邮件将被传递。

来自Manual

  

如果邮件成功接受传递,则返回TRUE,否则返回FALSE。

     

重要的是要注意,仅仅因为邮件已被接受发送,并不意味着邮件实际上会到达目的地。

您的邮件可能被收件人垃圾邮件过滤器阻止或直接进入垃圾邮件文件夹。

答案 1 :(得分:0)

您的电子邮件中只有一个小错字,但我认为这不会解决您的问题。

您指定了Content-rype,您应该将其更改为Content-type ...

但我认为这不会解决你的问题。