我的网站上有一个表单页面,用户必须输入他的电子邮件ID。一旦他这样做,就会触发他的电子邮件。我使用了mail()函数,但电子邮件没有通过。这是在远程服务器上。我错过了什么吗?下面是我正在使用的PHP代码。
<?php
$to = 'xyz@gmail.com';
$subject = 'Demo mail';
$message = 'This is a demo mail. Please reply to make sure the mail communication is okay.';
$headers = 'From: abc@gmail.com' . "\r\n" .
'Reply-To: abc@gmail.com' . "\r\n" .
'X-Mailer: PHP/' . phpversion();
if (mail($to, $subject, $message, $headers)) {
echo("<p>Email successfully sent!</p>");
} else {
echo("<p>Email delivery failed</p>");
}
?>
输出是电子邮件传递失败! 除了这个我应该做的是什么?提前谢谢!
答案 0 :(得分:0)
mail()
函数依赖于运行程序的服务器的电子邮件配置。您应该查看服务器电子邮件配置,或使用库以连接外部SMTP服务,如Gmail或您的某个电子邮件服务器。我推荐Swift电子邮件库,这是众所周知的,经过全面测试,后面有一个很棒的社区:
答案 1 :(得分:0)
检查php.ini配置文件以进行SMTP连接或添加ini_set(“SMTP”,“IP_ADDRESS”);在你的剧本中。
您还可以使用错误处理程序包装脚本以调试SMTP连接。