-1
$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 分钟,还没有收到任何电子邮件。我在这里想念什么?

4

4 回答 4

4

您的代码没有任何问题:我复制了它并收到了电子邮件。

可能是发到垃圾箱了,也可能是因为邮件服务器的IP被封禁了,邮件都没有到达。

于 2012-05-16T21:12:30.680 回答
1

我认为您正在使用IIS服务器,有时它不支持使用发送邮件PHP并给出错误。

为了克服这个问题,您可以在用于发送邮件的 PHP 页面中使用以下代码:

<?php ini_set("sendmail_form", "info@mydomain.com"); ?>

将代码放在本页的第一行,然后编写其他代码。尝试一下。

我猜你的邮件将从这个页面发送给你的发件人。

于 2012-09-04T16:34:13.853 回答
0

您的托管公司可能没有启用 mail() 功能,或者您没有检查邮箱中的“垃圾”文件夹。

于 2012-05-16T21:09:15.203 回答
0

您可以查看http://ch.php.net/manual/en/mail.requirements.php页面:

要使 Mail 函数可用,PHP 必须在编译期间访问系统上的 sendmail 二进制文件。如果您使用其他邮件程序,例如 qmail 或 postfix,请务必使用它们随附的适当的 sendmail 包装程序。PHP 将首先在您的 PATH 中查找 sendmail,然后在以下位置查找:/usr/bin:/usr/sbin:/usr/etc:/etc:/usr/ucblib:/usr/lib。强烈建议从您的 PATH 中获取 sendmail。此外,编译 PHP 的用户必须有权访问 sendmail 二进制文件。

于 2012-05-16T21:15:10.087 回答