热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

通过PHP发送的HTML电子邮件在Gmail中被视为垃圾邮件

我有以下php脚本,该脚本从服务器上的.txt文件加载html模板,并在发送电子邮件之前使用str_replace用电子邮件内容填充模板.最初,我尝试将服务器上的Webmail地址

我有以下php脚本,该脚本从服务器上的.txt文件加载html模板,并在发送电子邮件之前使用str_replace用电子邮件内容填充模板.

最初,我尝试将服务器上的Webmail地址硬编码到我的mailer_send函数的’to’字段中,此方法很好用.电子邮件模板显示完美.但是,当我尝试将其发送到Gmail帐户时,它被标记为垃圾邮件,而HTML只是显示为纯文本.是否有人知道我是否需要在电子邮件中添加其他标头以确保Gmail能够正确处理它?

理想情况下,我想通过服务器上的网络邮件向自己发送电子邮件,然后向用户发送自动回复,感谢他们的询问,但是如果该邮件始终被视为垃圾邮件,则不可能.

function mailer_send($mailer_recipient, $mailer_subject, $mailer_message){
$mailer_headers = 'From: webmaster@example' . '\r\n' .
'X-Mailer: PHP/' . phpversion() . '\r\n' .
'MIME-Version: 1.0\r\n' . '\r\n' .
'Content-Type: text/html; charset=ISO-8859-1\r\n';
mail($mailer_recipient, $mailer_subject, $mailer_message, $mailer_headers);
}
$name = $_POST['inputName'];
$email = $_POST['inputEmail'];
$message = strip_tags($_POST['inputMessage']);
$template = file_get_contents('email_templates/template.txt');
$template2 = $template;
$template = str_replace('[email_content]',$message, $template);
mailer_send('test@gmail.com','Test Email',$template);
$message2 = '

Thanks..


Dear' . $name . '


Thanks for your enquiry. Jason will get back to you with a quote as soon as possible.

';
$template2 = str_replace('[email_content]', $message2, $template2);
mailer_send($email,'Thankyou for your Enquiry',$template2);
?>

提前致谢.

额外:

在Gmail中收到电子邮件后,它似乎会忽略“发件人”标题,而只是说该电子邮件来自我的网络托管提供商服务器.

解决方法:

gmail有100万个理由会怀疑该电子邮件是垃圾邮件.

我要做的第一件事是使用可正确处理标头的库-> http://swiftmailer.org/

其次,确保您的发件人主机来自与服务器相同的IP,并具有正确的MX记录.


推荐阅读
author-avatar
jasonmysh
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有