我正在尝试发送邮件,它只是把我带到了空白页面。回声没有被击中,我看不出错误。
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';
}
答案 0 :(得分:1)
如上所述,您应该在脚本顶部使用以下两行打开错误报告:
ini_set('display_errors', 1);
error_reporting(E_ALL);
此外,您是否包含了PHPMailer的SMTP类,因为您是通过SMTP发送邮件的?文件“class.smtp.php”应该放在与“class.phpmailer.php”相同的目录中 - 如果缺少,那么当PHPMailer尝试包含它时会出错