使用smtp phpmailer发送邮件不起作用

时间:2014-09-03 08:02:26

标签: php smtp phpmailer

我在使用PHPMailer类发送电子邮件时遇到问题,在提交表单后我发送了一封邮件,但是我没有收到任何邮件。

我猜问题是使用SMTP身份验证,但我找不到问题。源应用程序存储在远程服务器上,使用ip地址:175.2.3.69并且我使用outlook count来发送邮件

有问题的代码是:

require_once('../libs/PHPMailer/class.phpmailer.php');
//Ensuite on débute l'envoi de mail

$mail = new PHPmailer();
$mail->IsSMTP(); // telling the class to use SMTP

try {
    $mail->Host       = "messagerie.abc.a.fr"; // SMTP server
    $mail->SMTPAuth   = true;                  // enable SMTP authentication
    $mail->Port       = 25;                    // set the SMTP port for the GMAIL server
    $mail->Username   = "username.name@a-bc.fr"; // SMTP account username
    $mail->Password   = "password";        // SMTP account password
    $mail->AddReplyTo('username.name@a-bc.fr', 'First Last');
    $mail->AddAddress('username.name@a-bc.fr', 'John Doe');
    $mail->SetFrom('username.name@a-bc.fr', 'First Last');
    $mail->AddReplyTo('username.name@a-bc.fr', 'First Last');
    $mail->Subject = 'PHPMailer Test Subject via mail(), advanced';
    $mail->AltBody = 'To view the message, please use an HTML compatible email viewer!'; // optional - MsgHTML will create an alternate automatically
    $mail->MsgHTML(file_get_contents('contents.html'));
    $mail->Send();

    echo "Message Sent OK<p></p>\n";
} catch (phpmailerException $e) {
    echo $e->errorMessage(); //Pretty error messages from PHPMailer
} catch (Exception $e) {
    echo $e->getMessage(); //Boring error messages from anything else!
}

1 个答案:

答案 0 :(得分:1)

PHPMailer不会抛出异常,除非您将true传递给构造函数,例如$mail = new PHPmailer(true);,因此您的代码不会导致任何异常捕获,也不会报告任何错误。我建议你设置$mail->SMTPDebug = 3;以获得有关此问题的更多反馈。