1
我在chrome中有一个奇怪的问题,我使用window.open打开一个新选项卡并使用tcpdf创建pdf,然后将其作为附件发送到特定地址,现在在铬中发生的是它发送2封邮件。如果弹出窗口被启用,那么我会得到2个窗口操作1.弹出窗口和2.新标签,首先我不明白怎么可能,我从来没有见过这个。Window.Open in chrome打开popus和新标签页
然后如果禁用弹出窗口,它只会在新标签页中打开,但仍然是2封邮件。
用于调用弹出页面和电子邮件代码的代码如下所述。请帮忙。
window.open('/loancal/rhexportemail.php' + qstring,"_blank");
//Code used to open popup
//------------- EMAIL CODE ----------------//
$to = "[email protected]";
$from = "[email protected]";
$subject = "Loan Enquiry Calculation Cashback - " . $client;
$message = "Please find attached Loan Enquiry Calculation Cashback statement for ".$client."." ;
//a random hash will be necessary to send mixed content
$separator = md5(time());
// carriage return type (we use a PHP end of line constant)
$eol = PHP_EOL;
// attachment name
$filename = $subject.".pdf";
// encode data (puts attachment in proper format)
$pdfdoc = $pdf->Output('LECC'.$separator.'.pdf', 'S');
$attachment = chunk_split(base64_encode($pdfdoc));
// encode data (multipart mandatory)
$headers = "From: ".$from.$eol;
$headers .= "MIME-Version: 1.0".$eol;
$headers .= "Content-Type: multipart/mixed; boundary=\"".$separator."\"".$eol.$eol;
$headers .= "Content-Transfer-Enconding: 7bit".$eol;
$headers .= "This is a MIME encoded message.".$eol.$eol;
// message
$headers .= "--".$separator.$eol;
$headers .= "Content-Type: text/html; charsrt=\"iso-8859-1\"".$eol;
$headers .= $message.$eol.$eol;
// attachment
$headers .= "--".$separator.$eol;
$headers .= "Content-Type: application/octet-stream; name=\"".$filename."\"".$eol;
$headers .= "Content-Transfer-Encoding: base64".$eol;
$headers .= "Content-Disposition: attachment".$eol.$eol;
$headers .= $attachment.$eol.$eol;
$headers .= "--".$separator."--";
// send message
if(@mail($to, $subject, $message, $headers))
{
echo "<script type='text/javascript'> alert('mail sent');window.close();</script>";
}
else{
echo "<script type='text/javascript'>alert('mail not sent');window.close(); </script>";
}
它并非如此,请尝试此操作..创建一个页面并添加一个window.open代码并在页面加载时设置一个javascript警报。现在,为该页面禁用弹出窗口阻止程序,您将同时看到弹出窗口和新标签页。我相信,即使弹出被阻止,chrome也不会抑制php代码,请使用下面提供的PHP代码来调用alert。 'echo“”;' –