如何使用 PHPMailer 发送邮件后重定向

1 php phpmailer

使用 PHPMailer 发送电子邮件时如何重定向?

$mail = new PHPMailer();
$mail->IsSMTP();
$mail->SMTPAuth   = true; 
$mail->SMTPSecure = "tls"; 
// $mail->Host       = "email-smtp.us-east-1.amazonaws.com";
$mail->Host       = "email-smtp.us-west-2.amazonaws.com";
$mail->Username   = "AKIAIVSF45PCGR7NZWNQ";
$mail->Password   = "Am2SBg4vluOvIc1+kycsWpCnxtf3jhGjYCAdBv7YYp/y";
//

$mail->SetFrom('test@gmail.com', 'Z-Reports'); //from (verified email address)
$mail->Subject = "Z-Reports (sent via smtp)"; //subject

//message
$body = emailZReports($total_sales, $inventory);

// $body = eregi_replace("[\]",'',$body);
$mail->MsgHTML($body);
//

//recipient
$mail->AddAddress("test@gmail.com", "Z-Reports"); 

//Success
if ($mail->Send()) { 
    echo "Message Sent!";            
}

//Error
if(!$mail->Send()) { 
    echo "Mailer Error: " . $mail->ErrorInfo; 
}
Run Code Online (Sandbox Code Playgroud)

如何重定向到特定页面而不是显示Message Sent!?

小智 5

如果您使用 SMTP,如果未设置为 0,则无法重定向到另一个页面。$mail->SMTPDebug这是因为它发送的标头您无法使用 进行修改header("Location: path/to/redirect")。设置 $mail->SMTPDebug = 0;以便您可以重定向到之后的另一个页面$mail->send()。但只有当您完成调试并且邮件发送成功时才必须执行此操作。