我正在制作一个邮件功能,它可以发送带有图片的文本,它可以用纯文本工作,但在添加img代码后,收件人获得的仍然是纯文本。该图像位于根目录中。
以下代码:
<form method="POST">
<input name="submit" type="submit" value="send!"/>
</form>
<?php
if(isset($_POST['submit'])){
$to="example@outlook.com";
// subject
$subject = 'test05';
// message
$message = "
<html>
<head>
<title>Birthday Reminders for August</title>
</head>
<body>
<p>Here are the birthdays upcoming in August!</p>
<table>
<img id='cat' width='208px' src='/cat.jpg'>
</table>
</body>
</html>
";
// To send HTML mail, the Content-type header must be set
$headers = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
// Additional headers
$headers .= 'To: Mary <mary@example.com>, Kelly <kelly@example.com>' . "\r\n";
$headers .= 'Reply-To: example@outlook.com' . "\r\n";
// $headers .= 'From: Panpan <general@panpan.tokyo>' . "\r\n";
$headers .= 'Cc: birthdayarchive@example.com' . "\r\n";
// mail($to, $subject, $message, $headers);
if (mail($to, $subject, $message, $headers)) {
// echo "Mail was sent! Great!";
echo $message;
}
else {
echo "Mission Failed";
}
}
?>
答案 0 :(得分:1)
邮件客户端知道如何处理这件事?:
/cat.jpg
cat.jpg
的根目录中是gmail.com
吗?它是在Outlook应用程序的根目录中吗?邮件客户端根本无法知道您的图像在哪里,因为您没有告诉它在哪里看。
使用完全限定的网址:
http://somedomain.com/cat.jpg
另请注意,某些邮件客户端可能仍会忽略此操作,可能取决于用户设置。链接到邮件中的资源是一种旧的垃圾邮件制作者技巧,用于跟踪邮件是否被打开/读取。消息中的Embedding the image as a resource通常是更好的方法。