2016-06-20 14 views
1

動作しない、GMailは私htmlを受け入れていない、PHPでメールを送信する:私はPHPを経由して、私のメールを送信しようとするとGmailは

簡単な例:

<!DOCTYPE html> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
</head> 

<body style="padding:0px; margin:0PX;" bgcolor="#dfdfdf"> 
<table width="100%" align="center" border="0" cellpadding="0" cellspacing="0" bgcolor="" style="table-layout:fixed; margin:0 auto;"> 
<tr> 
<td width="640" align="center" valign="top"> 

    Screenshot: <img src="data:image/jpeg;base64,someimginfo" /> 

</td> 
</tr> 
</table> 
</body> 
</html> 

GMailの出力:

enter image description here

Gmailでテキストが編集されます。 <html> - 私が使用>"<html>"

ヘッダ:MIME-Version: 1.0 & Content-type: text/html; charset=UTF-8

は私が間違って何をしているのですか?

EDITPHPコード:

<?php 
$recipient = "[email protected]"; 

$image = $_POST["image"]; 
$contact = $_POST["contact"]; 
$token = $_POST["token"]; 

if($token != "***"){ 
    exit('{"success":false, "error":"Invalid Token"}'); 
} 

$from = (filter_var($contact, FILTER_VALIDATE_EMAIL)) ? $contact : 'no- [email protected]'; 
$header = 'From: [email protected]' . "\r\n"; 
$headers .= 'MIME-Version: 1.0' . "\r\n"; 
$headers .= 'Content-type: text/html; charset=UTF-8' . "\r\n"; 

$txt = ' 
<!DOCTYPE html> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
</head> 

<body style="padding:0px; margin:0PX;" bgcolor="#dfdfdf"> 
<table width="100%" align="center" border="0" cellpadding="0" cellspacing="0" bgcolor="" style="table-layout:fixed; margin:0 auto;"> 
<tr> 
<td width="640" align="center" valign="top"> 

    Screenshot: <img src="data:image/jpeg;base64,' . $image . '" /> 

</td> 
</tr> 
</table> 
</body> 
</html> 
'; 

if(mail($recipient, "APP Support request", $txt, $header)){ 
    exit('{"success":true}'); 
} 

exit('{"success":false, "image":"' . $image . '"}'); 
?> 
+0

これらのヘッダーを設定して電子メールを送信するために使用するPHPコードを投稿できますか? –

+0

@ RoryO'Kane done –

答えて

1

問題は、これらの行にあるように見えます:

$header = 'From: [email protected]' . "\r\n"; 
$headers .= 'MIME-Version: 1.0' . "\r\n"; 
$headers .= 'Content-type: text/html; charset=UTF-8' . "\r\n"; 

// … 

if(mail($recipient, "APP Support request", $txt, $header)){ 

を名前$header$headers切り替えます。したがって、コンテンツにコンテンツタイプtext/htmlを追加すると、実際にメールを送信するために使用されている変数$headerには影響しません。

すべての変数を同じ名前($headers)に切り替える必要があります。

関連する問題