我剛開始使用PHPMailer,我不能讓我的HTML電子郵件發送和正確呈現。我可以讓他們發送罰款,但當我添加isHTML(true)方法電子郵件根本不發送。有什麼我需要在HTML電子郵件或佈局中加入不同的內容。PHPMailer不發送電子郵件,如果isHTML(true)
下面是HTML電子郵件:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
</head>
<body>
<h1>This is a test email</h1>
<p>Congratulations, {NAME}</p>
<p>You have won {PRIZE}</p>
<img src="{DOMAIN}assets/images/generated_barcodes/actual-000000013.png" alt="Barcode">
</body>
</html>
這裏是一個方法我用它來發送電子郵件的序列:
$this->_mail = new PHPMailer();
$this->_mail->From = FROM_EMAIL;
$this->_mail->FromName = FROM_EMAIL_NAME;
$this->_mail->addAddress($email);
$this->_mail->Subject = $subject;
$this->_mail->Body = $body;
$this->_mail->isHTML(true);
$this->_mail->send()
只是爲了澄清這個電子郵件發送的罰款,如果我註釋掉isHTML (true)方法,但它顯然不會呈現HTML。
預先感謝您!
編輯
好像我不得不使用$此 - > _ MAIL-> msgHTML($身體,DOMAIN);方法來加載我的HTML。但現在我有一個新問題。電子郵件發送,但不在AJAX請求中。當我用AJAX發佈一些數據時,我需要它發送電子郵件。
你不需要大寫'Is'嗎? – TylerH
「不發送」是什麼意思?有沒有錯誤?也可以嘗試設置'$ this - > _ mail-> AltBody'(如果我沒有記錯的話) – ex3v
也許你在設置isHtml之前添加Body內容我錯了http://stackoverflow.com/questions/11140263/phpmailer-發送HTML代碼,因爲TylerH說可能無法正常工作,因爲你有我的小寫字母而不是大寫字母I – Chris