我正在使用此代码:
$to = "someone@example.com";
$subject = "Test mail";
$message = "Hello! This is a simple email message.";
$from = "someonelse@example.com";
$headers = "From:" . $from;
mail($to,$subject,$message,$headers);
echo "Mail Sent.";
它将电子邮件发送到我的gmail的SPAM文件夹。
建议任何解决方案。
我不想使用任何PEAR MAIL类型的方式发送电子邮件或不想要求并包含任何文件。
这个函数不包含/需要任何额外的php文件。
答案 0 :(得分:4)
您应该使用PHP手册中的正确标题
$headers = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
// Additional headers
$headers .= 'To: Mary <mary@example.com>, Kelly <kelly@example.com>' . "\r\n";
$headers .= 'From: Birthday Reminder <birthday@example.com>' . "\r\n";
$headers .= 'Cc: birthdayarchive@example.com' . "\r\n";
$headers .= 'Bcc: birthdaycheck@example.com' . "\r\n";
// Mail it
mail($to, $subject, $message, $headers);
答案 1 :(得分:3)
Gmail垃圾邮件过滤器有很多部分可以确定邮件的垃圾邮件。您可以先查看您域名的SPF记录。避免在电子邮件中尽可能使用销售语言,HTML和颜色。
Google还提供了一个古老而有趣的video关于他们的垃圾邮件过滤如何运作的方法。
答案 2 :(得分:1)
这一切都在标题中。我不知道GMail如何在内部工作,但我在我的项目中发现设置Reply-To可以解决Content-Type标题。
有关此操作的示例,请参阅PHP mail() docs。
(注意:我有一个PHP调查问卷/回复系统,可以设置这些标题,电子邮件正确地通过GMail,Hotmail和Yahoo! Mail发送。)