我目前有這個問題1個額外空郵件。PHP梅勒一個MEDIATEMPLE網格服務器發送帶有根@本地
我使用PHP梅勒和我有以下代碼:
require_once("inc/class.phpmailer.php");
// Mail from contact form for me
$mail = new PHPMailer();
$mail -> IsSMTP();
$mail -> CharSet = "UTF-8";
$mail -> SetFrom($_POST["email"],$_POST["name"]);
$mail -> AddReplyTo($_POST["email"],$_POST["name"]);
$mail -> AddBCC("[email protected]");
$mail -> Subject = "Mail Subject";
$body = "... some html ...";
$mail -> MsgHTML($body);
// Automatic mail for the person that contacted me
$mail_customer = new PHPMailer();
$mail_customer -> IsSMTP();
$mail_customer -> CharSet = "UTF-8";
$mail_customer -> SetFrom("[email protected]","Contact");
$mail_customer -> AddReplyTo("[email protected]","Contact");
$mail_customer -> AddAddress($_POST["email"],$_POST["name"]);
$mail_customer -> Subject = "Thank you for contacting us!";
$body_customer = "... some html ...";
$mail_customer -> MsgHTML($body_customer);
$mail -> Send();
$mail_customer -> Send();
當這是在沒有任何錯誤,但由於某種原因,我得到三個電子郵件。
- $郵件 - 從$ _ POST [ 「電子郵件」]
- $郵件 - 從根@本地 - 這具有完全相同的郵件正文,但沒有$ _ POST數據
- $ mail_customer - 即到達$ _POST [「email」]沒有其他郵件。
什麼可能會造成這一點,我怎麼能解決這個問題?它是否與PHP Mailer或服務器配置有關?
不要使用提交者的地址作爲發件人地址 - 它將失敗所有雅虎和aol域名,並越來越多地爲其他人。從您的Web服務器的地址發送。另外請確保您使用的是最新的PHPMailer。在這兩種情況下,您都會調用'isSMTP',但不設置主機,也不提供用戶名或密碼屬性。 – Synchro 2014-11-02 09:56:29
我一直都是這樣使用它,因爲它永遠不會有問題。這裏的問題不是郵件發送,而是發送3封郵件而不是2封,第三封郵件是從root @ localhost發送的無效電子郵件。更奇怪的是,它只發送$ mail而不是$ mail_customer。 – 2014-11-03 15:32:35
減少你的問題 - 一次做一件事,並確切地隔離它產生額外的信息。使用假郵件服務器(請參閱PHPMailer文檔中的指針),以便您可以看到發送的內容。 – Synchro 2014-11-03 15:36:55