0

< img > タグなしで HTML 電子メールを送信すると、電子メールは送信されますが、 < img > タグが含まれていると電子メールが送信されないという奇妙な問題があります。以下は、電子メールの送信に使用されるphpコードと一緒に使用しているhtmlです。

HTML:

<head>
</head>

<body >

<img src="http://www.somesite.com/somefolder/someimage.jpg" />

</body>
</html>

PHP コード:

$from = "myemail@gmail.com";
$subject = "Some Subject";
$headers = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
$headers .= 'From: Test <'. $from .'>' . "\r\n";

// get emailcontent.html content
$emailcontent = file_get_contents('emailcontent.html');

// send the actual message
$extraHeaders = 'To: ' . $name . ' <'. $to .'>' . "\r\n";
mail($to, $subject, $emailcontent, $headers . $extraHeaders);
4

2 に答える 2

1

$emailcontentを使用せずにコンテンツを直接書き込んでみてくださいfile_get_contents

spam or junk folderメールが にないこと も確認してくださいreturn-pathheaders

http://css-tricks.com/sending-nice-html-email-with-php/もお読みください

于 2013-05-23T04:49:10.220 に答える
0

HTML でメールを送信したい場合は、これを試すことができます:/

$image= '
<html>
<body>
  <img src="http://www.example.com/image/images.jpg">
</body>
</html>
';

メール機能と合わせて使う

mail("email@domain.com", "$subject", $image, $headers);

$headersコンテンツ タイプを に設定しますtext\html。これがないと、メッセージは受信者によってプレーン テキストとして扱われます。なので:

$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
于 2013-05-23T05:37:20.007 に答える