PHP mail biçimlendirme sorunu - Neden CRLF başlık satır sonları HTML e-posta Outlook kırmak mı?

0 Cevap php

Ben HTML e-postalar göndermek ve kullanıcıların bir biçimlendirme sorun var PHP yerli mail() function istimal en yaygın e-posta istemcisi - Outlook 2007 (in addition to some other email clients) - tüm olmayan bir web geliştirici anlamsız gibi görünüyor bu yüzden html etiketleri maruz kalmaktadır.

Ben HTML e-posta o PHP manual demolar da aynı şekilde yolluyorum. Örnek:

$message  = get_HTML_email_with_valid_formatting();
$headers  = "MIME-Version: 1.0\r\n";
$headers .= "Content-Type: text/html; charset=UTF-8\r\n";
$headers .= "From: example.com <info@example.com>\r\n";
$headers .= "Reply-To: donotreply@example.com\r\n";
mail('me@example.com', 'test', $message, $headers);

Çeşitli e-posta istemcileri test zor çünkü, ben http://litmusapp.com/ ile imzaladı yüzden 47 farklı e-posta istemcileri e-postaların bir ekran görebilirsiniz. Çoğu (örneğin gmail, thunderbird, Lotus Notes) Tamam ama Outlook'un tüm farklı sürümleri Tamam değildir.

Ben aşağıdakileri yapın etmişti biçimlendirme sorunu gidermek için:

  1. $headers = "MIME-Version: 1.0\r\n"; posta başlığını çıkarın.
  2. Ben sadece "\n" yerine "\r\n" arasında benim başlıklarını sona olun.

Ben kılavuzuna uymayan zaman HTML e-posta ile daha iyi sonuçlar alıyorum neden bilen var mı?

Bilgi:

  • Ben RHEL 5.5 postfix sürüm 2.3.3 kullanıyorum.
  • PHP version 5.3.2

0 Cevap