$to= 'somebody@somedomain.com';
$subject = 'the subject';
$message = 'hello';
$headers = 'From: webmaster@example.com' . "\r\n" .
'Reply-To: webmaster@example.com' . "\r\n" .
'X-Mailer: PHP/' . phpversion();
mail($to, $subject, $message, $headers);
我正在使用此代码尝试发送电子邮件。但我已经等了10分钟,还没有收到任何电子邮件。我在这里缺少什么?
答案 0 :(得分:4)
您的代码没有错:我复制了它并收到了电子邮件。
也许它被发送到垃圾箱,也许邮件甚至无法到达,因为邮件服务器的IP被禁止了。
答案 1 :(得分:1)
我认为您使用的是IIS
服务器,有时它不支持使用PHP
发送邮件并发出错误。
要解决此问题,您可以在用于发送邮件的PHP页面中使用以下代码:
<?php ini_set("sendmail_form", "info@mydomain.com"); ?>
将代码放在此页面的第一行,然后编写其他代码。试试吧。
我猜您的邮件将从此页面发送给您的发件人。
答案 2 :(得分:0)
您的托管公司可能没有启用mail()功能,或者您没有检查邮箱中的“垃圾”文件夹。
答案 3 :(得分:0)
您可以查看http://ch.php.net/manual/en/mail.requirements.php页面:
要使邮件功能可用, PHP必须有权访问 编译期间系统上的sendmail二进制文件。如果你使用另一个 邮件程序,如qmail或postfix,请务必使用相应的 随附的sendmail包装器。 PHP将首先寻找 在您的PATH中发送sendmail,然后在以下内容中: 在/ usr / bin中:/ usr / sbin目录:/ USR的/ etc中:/ etc:在/ usr / ucblib中:/ usr / lib目录。这是非常高的 建议您从PATH获得sendmail。另外,用户 已编译的PHP必须具有访问sendmail二进制文件的权限。