我创建了一个网站,并在000webhost的免费服务器上托管。我正在为注册用户发送激活电子邮件。
码
$to = "$email1";
$subject = 'Account Activation';
$message = '<!DOCTYPE html>
<html>
<head>
</head>
<body>
<div style="margin-left: 100px">
<h1 >Hello '.$username.'</h1>
<p >• This mail is for your account activation .</p></br>
<p>• Please click on the below link to get your account activated.</p></br>
<p>• Login with your username and password after activation.</p>
</div>
</body>';
$headers = "MIME-Version: 1.0" . "\n";
$headers .= "Content-type:text/html;charset=UTF-8" . "\n";
$headers .= 'From: <developer@mysite.com>' . "\n";
mail($to, $subject, $message, $headers);
echo "success";
问题在于,每当我使用上面显示的地址发送邮件时,都不会发送邮件。问题在于我在标题中使用地址的一行,因为如果使用其他名称,例如&#39; name@example.com' (此处示例是其他名称)邮件已发送。每当我使用托管服务器提供的邮件时,问题就出现了。有人可以帮忙吗?
答案 0 :(得分:0)
来自PHP: mail() $additional_headers:
应使用CRLF(\ r \ n)
分隔多个额外标题因此,使用\r\n
分割标题:
$headers = "MIME-Version: 1.0" . "\r\n";
$headers .= "Content-type:text/html;charset=UTF-8" . "\r\n";
$headers .= 'From: <developer@mysite.com>' . "\r\n";
答案 1 :(得分:0)