2016-11-30 81 views
0

在WordPress主題中繼承了一些PHPMailer代碼,並且無法弄清楚爲什麼以下內容會發送兩個重複的電子郵件,並在主體中使用相同的時間戳。PHPMailer發送兩次

$mail = new PHPMailer; 

$mail->From = $_POST['form_email']; 
$mail->FromName = $_POST['form_name']; 

$mail->addAddress('[email protected]'); // Send email to 

$mail->isHTML(true); 

$mail->Subject = 'Entry'; 
$mail->Body = ' 
    <p>Submitted: '.date('d/m/Y H:i:s').'</p> 
'; 

if (!$mail->send()) { 
    $response->result = false; 
} 
+0

而不是$ mail使用$ my_mail並檢查。 $ mail過於通用的名稱可能會被wordpress使用,並且內部可能會有衝突。 –

回答

0

時間戳只有1秒的分辨率,所以它很可能,這是由你的瀏覽器的雙重要求 - 這是一些擴展的通病。這很容易測試 - 貼在你的主題的最後一個隨機數:

$mail->Subject = 'Entry '.rand(); 

如果您的郵件數量是不同的,你就會知道你的腳本被運行兩次。

它也不會幫助您僞造發件人地址,這是導致發送問題的好方法 - read the PHPMailer docs