任何人都可以告诉我如何将图像作为主体部分发送到时事通讯中。我如何从后端添加任何图像,以便当我向订阅者发送简报时,我想要显示的图像作为邮件的主体部分。
实际上我所说的是我有一个表格,我可以在其中输入文字,而且文字在通讯中也很顺利。现在我想在表单中添加图像,这样我就不需要写任何东西,只有图像会作为邮件的主体部分邮寄到邮件中。
非常感谢你。 你们一直非常支持我。
答案 0 :(得分:7)
如果您的简报是HTML格式,只需链接到服务器上的实时图像即可。
如果您没有自己的服务器,只需将图像托管在任何类型的免费图像托管中(imageshack.us),并在电子邮件正文中添加:
<img src="http://imageshack.us/myimage.png">
当用户打开电子邮件时,图像将从服务器加载。
只要电子邮件是多部分的(如前所述),任何“无法阅读”HTML的用户都将获得文本版本,该版本可以与您的实时服务器上的图像具有“硬链接”
希望这有助于你
答案 1 :(得分:6)
首先,您需要将简报作为HTML发送。然后,您可以将图像作为
插入新闻稿中<img src="image_url">
image_url可以是远程的或嵌入式的。远程图像使电子邮件变小,但大多数邮件客户端将要求用户批准。嵌入的图像将在不询问用户的情况下显示,但它将成为电子邮件的一部分。
要使用远程图像,只需将图像托管在某处并将URL设置为image_url。
嵌入式图像需要编码为MIME部分。这样做并非易事。您需要使用像PhpMailer这样的包,
http://sourceforge.net/projects/phpmailer/
这是一个例子,
<?php
require("class.phpmailer-lite.php");
$mail = new PHPMailerLite();
$mail->From="you@example.com";
$mail->FromName="Your Name";
$mail->AddAddress("list@example.com");
$mail->Subject = "Your fancy newsletter";
$mail->IsHTML(true);
$mail->AddEmbeddedImage('image.png', 'image_id', 'test.png', 'base64', 'image/png');
$mail->Body = <<<EOT
<h1>My Newsletter</h1>
<p>This picture is embedded in newsletter: <img src="cid:image_id" /></p>
EOT;
$mail->AltBody="Text only, sorry no image";
if(!$mail->Send())
{
echo "Error sending: " . $mail->ErrorInfo;
}
else
{
echo "Mail is sent";
}
?>
答案 2 :(得分:2)
你应该创建一个多部分mime消息,其中包含图像和一些HTML。
答案 3 :(得分:2)
我不建议将图像附加到电子邮件中......这是向您发送垃圾邮件的电子邮件服务提供商的众多标志之一。最好在Marcos的解决方案中列出,并通过绝对URL从另一台服务器链接。还要记住避免显而易见的电子邮件,它会让你被标记为黑色。它只需要一封有问题的电子邮件来举起一个带有垃圾邮件过滤器的标志,该过滤器会积极向您报告RBL。相信我,离开这些名单并不好玩!
我的公司每天代表客户发送数以万计的电子邮件。我们尝试在一个点上嵌入测试,发现超过50%的电子邮件要么无法投放,要么在垃圾邮件过滤的“深渊”中丢失。通过链接,我们的可交付性超过85%,当然取决于所提供的电子邮件的质量。