0

我正在尝试发送邮件,但它只是将我带到了空白页面。回声没有被击中,我看不到错误。

try {
    $mail->SetFrom($email, $name);
    $mail->SMTPDebug  = 2;   
    $address = "xx@gmail.com";
    $mail->AddAddress($address, "xx");
    $mail->Subject = "Contact Form Submission | " . $name;
    $mail->MsgHTML($email_body);
    $mail->SMTPSecure = "tls"; 
    $mail->IsSMTP();
    $mail->Host = "smtp.gmail.com";
    $mail->Port = 587;
    $mail->SMTPAuth = true;
    $mail->Username = 'xx@gmail.com';
    $mail->Password = 'password1234';

    if (!$mail->Send()) {
        echo "Mailer Error: " . $mail->ErrorInfo;
        exit;
    }
    else
        echo 'sent';
    //header("Location: contact.php?status=thanks");
} catch (phpmailerException $e) {
    echo 'error1';
} catch (Exception $e) {
    echo 'error2';
}
4

1 回答 1

1

如前所述,您应该在脚本顶部使用以下两行打开错误报告:

ini_set('display_errors', 1); 
error_reporting(E_ALL);

另外,您是否包含了 PHPMailer 的 SMTP 类,因为您通过 SMTP 发送邮件?文件“class.smtp.php”应该放在与“class.phpmailer.php”相同的目录中 - 如果缺少,那么 PHPMailer 在尝试包含它时会出错

于 2013-06-04T21:02:37.007 回答