首页 >后端开发 >php教程 >phpmailer 发送图片问题,提示发送成功,但邮件里图片不显示

phpmailer 发送图片问题,提示发送成功,但邮件里图片不显示

WBOY
WBOY原创
2016-06-23 13:45:342851浏览

如题,body格式是HTML,我自己做了个编辑页面,在编辑页面里图片可以显示,不过图片是在内网的服务器中,是和路径有关系么


回复讨论(解决方案)

你看下路径不就知道了。

图片是连接?
内网(或本地)图片要当做附件吧

你看下路径不就知道了。


路径是图片在内网服务器中的路径,在我自己的编辑页面可以正常显示

接受邮件之后就显示不出来


用phpmailer发送图片是只要图片路径就行么?原理是什么啊?

图片是连接?
内网(或本地)图片要当做附件吧



图片确实是链接,因为是从数据库中查到的。我是要把一篇文章通过邮件发送,文章中会有图片,需要都在内容中显示,不能发附件

你在邮件中看下路径是什么?

你在邮件中看下路径是什么?



phpmailer 发送图片问题,提示发送成功,但邮件里图片不显示

邮件中的路径就是从数据库中取出的图片的路径,图片是放在内网服务器上的,如果在内网环境下是可以查看的。

我现在就想知道phpmailer发送邮件的原理是什么,不应该是只要一个链接就能发送图片吧

/js/ueditor1_3_5-gbk-php/php/upload/84301406165833.jpg 

你这路径不对吧,缺少域名吧? 你的图片在内网,外网引用图片行吗? 

/js/ueditor1_3_5-gbk-php/php/upload/84301406165833.jpg 

你这路径不对吧,缺少域名吧? 你的图片在内网,外网引用图片行吗? 



所以说我也纠结这个问题啊,如果phpmailer发送图片的功能只是发送phpmailer 发送图片问题,提示发送成功,但邮件里图片不显示标签加链接的话,内网中或者本地的图片不就不能显示了么,那这个发送图片还有什么用啊

发送本地图片用 AddEmbeddedImage 方法,例

$id = 1;$mail->AddEmbeddedImage('03.gif', $id, 'attachment', 'base64', 'image/gif');$body .= '<img  src="cid:'.$id.'"   style="max-width:90%" / alt="phpmailer 发送图片问题,提示发送成功,但邮件里图片不显示" >';
在邮件正文里将产生
<img  src="http://twebmail.mail.163.com/js6/s?func=mbox:getMessageData&sid=WDRWkXHcLWMWDYoYssccJDASHzdXUvmz&mid=463:xtbBzwnaLFD+iXy1QAAAse&part=2"   style="max-width:90%" alt="phpmailer 发送图片问题,提示发送成功,但邮件里图片不显示" >
这样的代码
一个一个手工做,实在太麻烦
所以你应该写一个方法,将 $body 中的本地图片匹配出来,逐个处理

内网中的图片该如何处理,没有内网无法测试
你可参考一下这个  http://www.oschina.net/code/snippet_54100_2855

请问楼主还在吗?也有同样的问题,想请教一下

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn