こんにちは、base64 エンコーディングを使用するのはこれが初めてです。
私がやろうとしていることはすべて問題ないようですが、電子メールを送信すると、電子メール内のすべてのタグ (プレーンテキスト) が表示され、HTML が正しく表示されません。
メールの送信方法の例を次に示します。
html>body>center>table bgcolor="#012b2b" width="100%">tr>td align="center">img src="data:image/jpg;base64,/9j/4QAYRXhpZgAASUkqAAgAAAAAAAAAAAAAAP/sABFEdWNreQABAAQAAABGAAD...
この投稿のすべての < 最初のブラケットを削除しました。
私がこれまでに行ったことは次のとおりです。
$pathr = "http://www.aboutitgroup.com/dev/sbtours/files/6113/7059/1223/NewsLetter.jpg"
$sep = sha1(date('r', time()));
$attachment = file_get_contents($pathr);
$encoded = base64_encode($attachment);
$headers .= "MIME-Version: 1.0\r\n";
$headers .= " Content-Type: text/html;
boundary=\"PHP-mixed-{$sep}\"";
$headers .= "Content-Transfer-Encoding: base64";
$subject = 'Newsletter';
$messages ="... img src="data:image/jpg;base64,'.$encoded.'"/>...';
メッセージが HTML ではなくプレーン テキストのみで表示される理由を説明してください。
受信した電子メール テキストをコピーして HTML ファイルとして保存すると、正しく表示されます。
ありがとうございました。