PHP电子邮件正在发送但未收到
我有一个不起作用的电子邮件表单。我甚至复制粘贴了确切的语法,并插入了我的电子邮件地址。我的错误处理说它工作,但我没有收到电子邮件。是的,我已经检查了我的垃圾邮件。这是我的代码:PHP电子邮件正在发送但未收到,php,email,Php,Email,我有一个不起作用的电子邮件表单。我甚至复制粘贴了确切的语法,并插入了我的电子邮件地址。我的错误处理说它工作,但我没有收到电子邮件。是的,我已经检查了我的垃圾邮件。这是我的代码: $to = 'krummens@krummens.com'; $subject = 'the subject'; $message = 'hello'; $headers = 'From: webmaster@example.com' . "\r\n" . 'Reply-To: krummens@yahoo.c
$to = 'krummens@krummens.com';
$subject = 'the subject';
$message = 'hello';
$headers = 'From: webmaster@example.com' . "\r\n" .
'Reply-To: krummens@yahoo.com' . "\r\n" .
'X-Mailer: PHP/' . phpversion();
$mailResult = mail($to, $subject, $message, $headers);
if($mailResult) {
echo "Email sent to " . $to;
}
else {
echo "Error sending email";
}
页面上的结果是:Email sent to krummens@yahoo.com
有什么帮助吗?您需要在php.ini中打开邮件。函数返回true并不意味着邮件已实际发送 像这样: 在php.ini中:
[mail function]
; For Win32 only.
;SMTP = localhost
;smtp_port = 25
; For Win32 only.
;sendmail_from = me@example.com
; For Unix only. You may supply arguments as well (default: "sendmail -t -i").
sendmail_path = /usr/sbin/sendmail -t -i -f me@example.com
从:
重要的是要注意,仅仅因为邮件被接受
但这并不意味着邮件将实际到达预定的目的地
目的地
通过运行phpinfo()检查是否安装并打开了SMTP;仅仅因为
mail()
返回true,并不意味着邮件已实际发送。这只是意味着它被传递给了系统的邮件处理程序。“如果邮件被成功接受交付,则返回TRUE,否则返回FALSE。重要的是要注意,仅仅因为邮件被接受交付,并不意味着邮件将实际到达预期目的地。”还要检查邮件日志、apache日志和php日志(如果存在)的输出我建议您使用,因为邮件功能在许多情况下可能会有问题。谷歌搜索一下。@KoenHoeijmakers:my phpinfo()上写着“localhost”。这就是它应该是的吗?