我曾經使用「PHP郵件程序」使用用戶的電子郵件和密碼進行身份驗證,從他們的地址發送到我的應用程序中,但這樣帶來的不便。如何使用我的客戶的電子郵件發送他們的電子郵件作爲「發件人」
所以我想要做一些類似「Mailchimp」的事情。 Mailchimp允許用戶設置他們的電子郵件,然後Mailchimp只使用用戶的電子郵件作爲「發件人」。
任何人都可以幫我解決這個問題。
我曾經使用「PHP郵件程序」使用用戶的電子郵件和密碼進行身份驗證,從他們的地址發送到我的應用程序中,但這樣帶來的不便。如何使用我的客戶的電子郵件發送他們的電子郵件作爲「發件人」
所以我想要做一些類似「Mailchimp」的事情。 Mailchimp允許用戶設置他們的電子郵件,然後Mailchimp只使用用戶的電子郵件作爲「發件人」。
任何人都可以幫我解決這個問題。
你不能。 MailChimp要求您通過DNS設置驗證自己是電子郵件地址和域的所有者。 See more details
您需要做的是首先驗證用戶的電子郵件地址是否正確。這裏是一個很好的演練,顯示瞭如何做到這一點:
http://code.tutsplus.com/tutorials/how-to-implement-email-verification-for-new-members--net-3824
您還需要一個免責聲明,以證明他們已經給你權限發送代表他們的電子郵件。
Disclaimer: by enrolling for this service you are granting this
app permission to send emails on your behalf.
接下來,您需要創建一個僅適用於您的應用的功能電子郵件帳戶。例如:
[email protected]
然後,最後但並非最不重要 - 繼續使用PHPMailer,但使用它不同。驗證併發送來自應用程序功能帳戶的電子郵件,但將AddReplyTo地址設置爲客戶的地址和姓名。例如:
select email, firstname from client;
$mail = new PHPMailer();
$mail->IsSMTP();
$mail->SMTPAuth = true;
$mail->SMTPSecure = 'tsl';
$mail->SMTPDebug = 1;
$mail->Host = [email protected];
$mail->Port = EMAIL_PORT;
$mail->Username = [email protected];
$mail->Password = yourpass;
$mail->SetFrom('[email protected]', 'Functional Mailer');
$mail->AddReplyTo('(email from select)', '(firstname from select)');
目前尚不清楚您是否正在使用'Mailchimp'或者您只是舉例說明了它們具有的功能並且您想要模仿。 –
如果您嘗試僞造他們的電子郵件地址,根據設置,您的郵件將被標記爲垃圾郵件或完全退回。你應該真的採取不同的方式發送電子郵件。 – DanFromGermany
不要這樣做,除非您的服務器被明確授權通過要用作發件人的地址的域SPF記錄發送電子郵件。否則,您將以垃圾郵件結束,並可能將您的服務器列入黑名單。 – vard