【问题标题】:php mailer not working. Mail errorphp 邮件程序不工作。邮件错误
【发布时间】:2013-12-07 00:19:56
【问题描述】:

我无法使用 php mailer 类发送电子邮件。这是我得到的错误。

错误

Mailer 错误:以下发件人地址失败:admin@mobilebitzltd.com:调用 Mail() 时未连接。

这是我正在使用的代码。

$mail = new PHPMailer();
$mail->IsSMTP(); // Set mailer to use SMTP
$mail->Host = 'smtp.live.com'; // Specify main and backup server
$mail->Port = '465';
$mail->SMTPAuth = true; // Enable SMTP authentication
$mail->Username = 'admin@mydoamin.com'; // SMTP username
$mail->Password = 'sdf'; // SMTP password
$mail->SetFrom($from, $from);
$mail->AddReplyTo($from, $from);
$mail->Subject = $subject;
$mail->MsgHTML($message);
$address = $to;
$mail->AddAddress($address, $customer_name);

if (!$mail->Send())
{
    echo "Mailer Error: " . $mail->ErrorInfo;
    exit;
}
else
{
    echo "Message sent!";
    exit;
}

【问题讨论】:

  • 请立即更改您的电子邮件密码。
  • 邮件服务器的密码最好改一下。该通行证现在在所有编辑的历史记录中
  • 您在 live.com 上更改了它,而不仅仅是在问题中?

标签: php smtp phpmailer


【解决方案1】:

我建议将整个邮件进程放入一个 try/catch 块中,以获取有关错误的更多信息,这是一个很好的起点。异常中可能包含更多细节,有助于查明问题。

try {
    $mail->SetFrom($from, $from);
    ...
    ...
    $mail->Send();
} catch ( phpmailerException $e ) {
    echo $e->errorMessage(); 
} catch ( Exception $e ) {
    echo $e->getMessage(); 
}

我发现另一个问题可能会有所帮助,可能值得一看:Having trouble with PHPMailer

最重要的是,我认为重要的是有人指出您刚刚在互联网上发布了您的纯文本密码。您可能希望在任何地方使用它时尽快更改它。

【讨论】:

    【解决方案2】:

    添加

    $mail->SMTPDebug = 1; 
    

    以获取有关问题所在的更多信息。

    然后试试

    $mail = new PHPMailer; 
    

    在顶部。

    【讨论】:

    猜你喜欢
    • 2016-03-04
    • 1970-01-01
    • 2011-01-14
    • 1970-01-01
    • 2012-01-03
    • 2015-08-10
    • 1970-01-01
    • 2013-06-03
    • 2017-10-27
    相关资源
    最近更新 更多