在邮件中显示PHP图像而不下载

12 浏览
0 Comments

在邮件中显示PHP图像而不下载

你好,我想使用PHP Mailer类以HTML格式发送一张图片,但是图片在下载后才会显示在邮件中。我希望能够在不下载的情况下显示图片。邮件类中是否有相应的选项,或者还有其他方法可以实现这个功能?

或者我需要以另一种格式发送图片。

0
0 Comments

问题的原因是可能有两种情况:

1. 你不想在邮件中嵌入实际的图像文件,可以简单地在邮件中插入一个<img>元素,链接到远程位置的图像,就像在任何其他HTML页面中一样。然后祈祷客户端启用了HTML邮件并允许显示远程图像。

2. 你不想从远程服务器引用文件,而是要将其嵌入到邮件中。在这种情况下,可以参考How To Embed Images in HTML EMailAttaching an image to an email

0
0 Comments

问题的原因是:使用PHP Mailer发送邮件时,通过AddAttachment方法添加附件后,PHP Mailer会检查HTML内容中是否有对该文件的引用,并自动将其嵌入邮件中。

解决方法是:在发送邮件之前,通过AddAttachment方法将图片附件添加到邮件中,然后在HTML内容中使用标签引用该图片。这样PHP Mailer会自动将图片嵌入邮件中,而不会让收件人下载附件。

以下是整理后的

如果你正在使用PHP Mailer发送邮件...

$mail = new PHPMailer();    
$mail->SetFrom("blah.com");
$mail->AddAddress("blah.com");
$mail->Subject = "Blah"
$mail->MsgHTML('<html><body><img src="logo.jpg">Hello</body></html>');
$mail->AddAttachment("logo.jpg");
$mail->Send();

使用AddAttachment方法,PHP Mailer会检查你的HTML内容是否引用了该文件,并自动将其嵌入邮件中。这样,收件人在收到邮件时,不需要下载附件,就能直接看到图片。

0
0 Comments

在电子邮件中显示图片而不是下载的问题很简单。只需像开发网页一样编写HTML代码,并在src属性中提供完整的图像URL。不要忘记在正文HTML中使用eregi_replace()函数。

$html_message = eregi_replace("[\]",'',$body_html_string);

enjoy!!!! 😉

0