我得到了这样的代码:
$headers = '';
//$headers .= 'Reply-To: "site\'s name" <newsletter@example.com>'."\r\n";
//$headers .= 'From: "site\'s name" <newsletter@example.com>'."\r\n";
$headers .= 'MIME-Version: 1.0'."\r\n";
$headers .= 'Content-type: text/html; charset=utf-8'."\r\n";
mail($_POST['email'], stripslashes($result['title']), $message, $headers);
只要注释掉这两行,它就会正确发送电子邮件。否则 - 它只是没有。没有任何错误甚至通知。它工作(未注释的代码)直到昨天,现在它停止了。任何想法,为什么会发生?我不能使用Swift或类似的东西,因为它不是我的项目。
编辑:报价不正确,但问题并非如此。 编辑:该死的,它只是服务器管理员,他们使用不存在的帐户中的标头阻止了所有邮件。我只需要创建这样的邮箱,然后我再次开始工作......
答案 0 :(得分:2)
site's name
尝试使用正确引用
$headers .= 'Reply-To: "site\'s name" <newsletter@example.com>'."\r\n";
$headers .= 'From: "site\'s name" <newsletter@example.com>'."\r\n";
答案 1 :(得分:0)
您可以添加标题作为下面的代码。删除不需要的单引号和双引号。只需简单写下如下。
$headers = "From: site name <newsletter@example.com> \r\n";
$headers .= "Reply-To: site\'s name <newsletter@example.com> \r\n";
$headers .= "MIME-Version: 1.0\r\n";