未在php中接收mail()函数发送的邮件[重复]
Posted
技术标签:
【中文标题】未在php中接收mail()函数发送的邮件[重复]【英文标题】:Not receiving mail sent by mail() function in php [duplicate] 【发布时间】:2015-12-19 06:38:18 【问题描述】:下面的代码显示“邮件发送成功...”但发出的邮件没有在收件人的收件箱或垃圾邮件文件夹中收到。
<?php
$to = "rcvr@example.com";
$subject = "This is subject";
$message = "<b>This is html message.</b>";
$message .= "<h1>This is headline.</h1>";
$header = "From:mymailid@gmail.com \r\n";
$retval = mail ($to,$subject,$message,$header);
if( $retval == true )
echo "Message sent successfully...";
else
echo "Message could not be sent...";
?>
我已经在 php.ini 中更改了 [mail function],如下所示
[mail function]
SMTP = smtp.gmail.com
smtp_port = 587
sendmail_from = mymailid@gmail.com
sendmail_path = "\"C:\xampp\sendmail\sendmail.exe\" -t"
和 sendmail.ini 中的 [sendmail] 像这样
smtp_server=smtp.gmail.com
smtp_port=587
smtp_ssl=tls
error_logfile=error.log
pop3_server=
pop3_username=
pop3_password=
force_recipient=
hostname=
auth_username=mymailid@gmail.com
auth_password=mymailid_pass
force_sender=mymailid@gmail.com
所以一切都很好,$retval
返回 true 并回显“消息已成功发送...”但接收者不会在他的收件箱或垃圾邮件中收到它。
我还在 gmail settings->forwarding and pop/imap
中启用了 imap
。
【问题讨论】:
您的 gmail 配置是否正确?从您的其他帐户(雅虎等)发送测试邮件并检查您是否收到任何邮件? 你检查error.log文件了吗? @Priya - 我如何检查 error.log 文件的位置? 给出路径而不是在 sendmail.ini 中尝试这个 error_logfile=error.log 并检查日志文件。 【参考方案1】:<?php
$to = "rcvr@example.com";
$subject = "This is subject";
$message = "<b>This is HTML message.</b>";
$message .= "<h1>This is headline.</h1>";
$header = "From:mymailid@gmail.com \r\n";
$retval = mail($to,$subject,$message,$header);
if(isset($retval))//change
echo "Message sent successfully...";
else
echo "Message could not be sent...";
?>
并在php.ini
中评论以下行
sendmail_path="C:\xampp\mailtodisk\mailtodisk.exe"
Read this answer to Config Your localserver
【讨论】:
在我的php.ini
行中sendmail_path="C:\xampp\mailtodisk\mailtodisk.exe"
不存在,只有sendmail_path = "\"C:\xampp\sendmail\sendmail.exe\" -t"
存在,我评论了这一行但仍然无法正常工作
不是那一行。还有另一条线。搜索一次
没有。我搜索了,但只有sendmail_path = "\"C:\xampp\sendmail\sendmail.exe\" -t"
行存在以上是关于未在php中接收mail()函数发送的邮件[重复]的主要内容,如果未能解决你的问题,请参考以下文章
带有 xampp 和 hMailServer 的 PHP mail() [重复]
基于PHP自带的mail函数实现发送邮件以及带有附件的邮件功能