页面加载完毕,然后使用PHP代码执行一些操作
我使用的是PHPMailer,我注意到电子邮件会被发送两次(重复)。第一个是页面几乎完成加载时(如30-50%加载进度),第二个是页面完成加载时。页面加载完毕,然后使用PHP代码执行一些操作,php,phpmailer,Php,Phpmailer,我使用的是PHPMailer,我注意到电子邮件会被发送两次(重复)。第一个是页面几乎完成加载时(如30-50%加载进度),第二个是页面完成加载时。 这是PHPMailer和浏览器交互的一个已知问题,我正在尝试使我的PHP页面仅在页面实际加载完成后运行。 我该怎么做? PHP代码在 如何以及何时调用phpMailer以及如何将html输出到broswer?echo还是php标记之外?我的脚本将从另一个页面运行,例如,从A页到B页(其中A页将信息发送到B页,B页将处理作为电子邮件内容发送的信息)。等
这是PHPMailer和浏览器交互的一个已知问题,我正在尝试使我的PHP页面仅在页面实际加载完成后运行。
我该怎么做?
PHP代码在
如何以及何时调用phpMailer以及如何将html输出到broswer?echo还是php标记之外?我的脚本将从另一个页面运行,例如,从A页到B页(其中A页将信息发送到B页,B页将处理作为电子邮件内容发送的信息)。等等,我将编辑主帖子。每次检查您提交的数据;我想可能会有不同。浏览器交互根本不存在PHPMailer问题——有些浏览器插件会发出重复请求,但这与PHP中的任何内容都无关。
$mail = new PHPMailer;
$mail->isSMTP();
$mail->Host = $hostServer;
$mail->SMTPAuth = true;
$mail->Username = $senderEmail;
$mail->Password = $senderPassword;
$mail->SMTPSecure = $SMTP_SecureType;
$mail->Port = $SMTP_Port;
$mail->setFrom($senderEmail, $senderName);
$mail->isHTML(true);
$mail->addAddress($appEmail);
$mail->Subject = "Subject here";
$mail->Body = "Body here";
$mail->AltBody = "Alt Body Here";
if(!$mail->send()) {
echo 'Message could not be sent.';
echo 'Mailer Error: ' . $mail->ErrorInfo;
} else {
if ($debugMode == true) {
echo 'Message has been sent';
}
}