2016-01-22 68 views
1

我有問題與PHP郵件發送基於html的消息。一些答案在這裏說,計算器,包括$ MAIL-> isHTML(真),我做的,但沒有結果..這裏是代碼PHPMailer不會發送html消息

require '...';  
$mail = new PHPMailer;   
$mail->isSMTP(); 
$mail->Host = '...'; 
$mail->SMTPAuth = true; 
$mail->Username = '...'; 
$mail->Password = '...';        
$mail->setFrom("...."); 
$mail->addAddress("...");     
$mail->Subject = "..."; 
$mail->Body = "<li>abcd</li>"; 
$mail->isHTML(true); 
if(!$mail->send()) { 
    echo 'Message could not be sent.'; 
    echo 'Mailer Error: ' . $mail->ErrorInfo; 
} else { 
    echo 'Message has been sent'; 
} 

有誰知道什麼是錯?

謝謝!

+0

'

  • abcd
  • '是不夠的。您需要使用'<!DOCTYPE html> ...'作爲正確的HTML標記。 –

    +0

    oo,好的。我不知道有些例子沒有提到這一點。我會嘗試結束帖子回覆 –

    回答

    3

    <li>abcd</li>是不夠的,還應該包括<ul></ul>標籤。您需要使用<!DOCTYPE html><head></head><body>...</body></html>作爲正確和完整的HTML標記並連接$mail->Body

    $mail->Body  = "<!DOCTYPE html>"; // the first one does not contain the dot 
    $mail->Body .= "<head></head>"; 
    $mail->Body .= "<title></title>"; 
    $mail->Body .= "<body>"; 
    $mail->Body .= "<ul>"; 
    $mail->Body .= "<li>abcd</li>"; 
    $mail->Body .= "</ul>"; 
    $mail->Body .= "</body>"; 
    $mail->Body .= "</html>"; 
    

    您也可以根據您想要使用的類型替代<ul></ul><ol></ol>

    +0

    嘿弗雷德。你知道可能是什麼原因,現在我是senind html郵件g郵件不顯示消息,除非我按下這個圖標'...',gmail在郵件中。該圖標有'隱藏標題'內容被截斷 –

    +0

    @IraklisBekiaris這是正常的,可能是2原因之一。 1)信息太長,或者你有第二條信息相同。 –