2017-11-09 1 views
0

電子メールシステムでは、電子メールがPHPMailerでフォーマットされています。 PHPMailerが電子メールを送信すると、電子メールクライアントで開き、HTMLではなくテキストとして表示します。PHPMailer html電子メールがhtmlとして表示されない

私はGmailとYahooを使ってみましたが、どちらのクライアントもHTMLソースコードとしてメールを表示しています。

私はこれをどのように修正することができますか?

注:Outlookを使用してHTML電子メールのバージョンを添付すると(テキストとして挿入)、上記の電子メールクライアントで電子メールが正しく送信および表示されます。

おかげで、事前

+0

あなたの設定のどこかで、 'text/plain'から' text/html'へのエンコーディングをhtmlとして設定する必要があります。 –

+0

@ shyammakwana.meこれは既にコードに設定されています – hinch

+0

質問にあなたのコードを追加してください。あなたが何をしているのかは分かりません。 – Synchro

答えて

1

に私はphpmailerのHTMLとしてあなたのコードを認識していないと信じています。 電子メールを作成する際のコード行を追加してください:ここで私が使用して正しく動作していたコードのサンプルです

$mail->IsHTML(true); 

EDIT。差異があるかどうかを確認することができます。

$mail = new PHPMailer; 
//Set email parameters 
$mail->isSMTP();       // Set mailer to use SMTP 
$mail->Host = 'smtp.office365.com';  // Specify main and backup server 
$mail->SMTPAuth = true;       // Enable SMTP authentication 
$mail->Username = '[email protected]';  // SMTP username 
$mail->Password = 'MyPassword';     // SMTP password      
$mail->SMTPSecure = 'tls';   // Enable encryption, 'ssl' also accepted 
$mail->Port = 587; 
$mail->From = $fromEmail; 
$mail->FromName = self::getEmailName($email); 
$mail->addAddress($email); 
$mail->WordWrap = 50;       // Set word wrap to 50 characters 
$mail->isHTML(true);        // Set email format to HTML 
$mail->CharSet = "UTF-8"; 
+0

私はすでに自分のコードにこれを持っています。申し訳ありませんが私の質問でこれを追加してください – hinch

+0

電子メールの本文を設定した後にそれをやっている場合もチェックしてください。本文を設定するには、次の行を使用する必要があります。 '$ mail-> Body = $ Body;' –

+0

私は現在、この@Kostas Georgiouのようにしています。$ mail-> isHTML(true); //電子メールフォーマットをHTMLに設定する $ mail-> Subject = $ subject; $ mail-> Body = $ message; – hinch

0

デフォルトでは、Phpmailerは電子メールの本文を平文として設定します。 $eMail->IsHTML(true);

+0

私はすでに自分のコードにこれを持っています。申し訳ありませんが私の質問にこれを追加している必要があります – hinch

関連する問題