我正在使用gmail SMTP發送郵件的幫助下,phpmailer庫。它正在發送郵件,但它不是從我在SetFrom地址中設置的郵件地址發送的。這裏是我的代碼:SetFrom PHPMailer不能正常工作
<?php
require 'phpmailer/class.phpmailer.php';
$mail = new PHPMailer;
$mail->IsSMTP();
$mail->SMTPAuth = true;
$mail->Host = "smtp.gmail.com";
$mail->Port = 587;
$mail->Username = "[email protected]";
$mail->Password = "gmail_password";
$mail->From = '[email protected]';
$mail->FromName = 'Admin';
$mail->AddAddress('[email protected]', 'Receiver'); // Add a recipient
$mail->IsHTML(true);
$mail->Subject = 'Here is the Subject';
$mail->WordWrap = 50;
$mail->Body = "This is in <b>Blod Text</b>";
$mail->AltBody = 'This is the body in plain text for non-HTML mail clients';
if(!$mail->Send()) {
echo 'Message could not be sent.';
echo 'Mailer Error: ' . $mail->ErrorInfo;
exit;
}
echo 'Message has been sent';
?>
它是由[email protected]發送郵件,但我想它與「[email protected]」發送的設置$ MAIL->從。任何幫助將不勝感激。
你讀過谷歌有關[發送來自不同地址的電子郵件]的說法(https://support.google.com/mail/answer/22370?hl=zh-CN) – Anigel
@Anigel:假設你正在聯繫形式和發送郵件與phpmailer。發件人地址將是用戶填寫電子郵件地址字段的內容,並且地址將是您的電子郵件ID。在這種情況下,每次從不同的用戶,從電子郵件將永遠是不同的。所以,我們需要在$ mail-> From中設置它。那就是我正在做的。我不認爲它有任何來自您鏈接文章的內容。 – prembaranwal
我不認爲你已經閱讀過這篇文章,Google表示你只能從在你的谷歌帳戶中配置的地址發送。你不能以jo.bloggs登錄,並從jane.doe發送電子郵件如果你想做你剛纔描述的內容,那麼你不能使用Gmail SMTP,你將不得不使用一個不同的服務器,允許你發送任何人的電子郵件並且您將在許多郵件服務器上過濾或阻止垃圾郵件,因爲您的郵件服務器將無法匹配來自地址IE的用戶的正確郵件服務器,它將無法通過SPF檢查 – Anigel