我正在使用PHPMailer从我的网站发送电子邮件,但$mail->send()
返回true且邮件未发送。我的错误日志中没有报告错误。我在Bigrock托管了我的网站。我的代码中没有发现任何错误。
<?php
if(isset($_POST['submit']))
{
require 'class.smtp.php';
require 'PHPMailerAutoload.php';
ini_set('SMTP','localhost' );
ini_set('sendmail_from', 'exmaple@gmail.com');
$fromrec=$_POST['from'];
$from="example@gmail.com";
$subject=$_POST['sf'];
$message=$_POST['message'];
$mail = new PHPMailer;
$mail->IsSMTP();
$mail->Host = "localhost";
$mail->setFrom($from, 'Rahul');
$mail->addAddress("example1@gmail.com");
$mail->Subject = $subject;
$mail->Body = "From:".$fromrec."".$message;
if(!$mail->send()) {
echo 'Message was not sent.';
echo 'Mailer error: ' . $mail->ErrorInfo;
} else if($mail->send()) {
echo 'Message has been sent.';
echo $mail->ErrorInfo;
}
else
{
echo 'Mailer error: ' . $mail->ErrorInfo;
}
}
?>
答案 0 :(得分:0)
在这个问题上,我咨询了Bigrock的客户服务,并与他们聊了聊。在上面的代码中很简单,来自地址的电子邮件ID必须是特定于域的,并且地址可以是任何东西。将电子邮件ID更改为特定于域并将主机更改为mail.example.com。我的问题已经解决了。如果有人遇到同样的问题,请试试。