我正在尝试从php发送包含图像的HTML邮件。
我收到电子邮件,所有的超文本标记语言标签看起来都很好,除了<img>标签。
电子邮件的消息如下所示:
$message = '<img src="http://your-click.ch/wp-content/uploads/2014/11/logo1.png" alt="Your Click" width="131" height="52" border="0" />';
当我收到邮件时,我看到有一个图像,但它是空白的。当我检查元素时,我看到以下代码:
<img alt="Your Click" width="131" height="52" border="0">如您所见,整个src属性都丢失了吗?为什么?
发布于 2015-05-11 08:56:00
出于安全原因,一些电子邮件客户端会过滤掉外部链接的图像。尝试对图像进行编码,并将其包含在邮件正文中,而不是外部链接。
发布于 2015-05-11 09:03:29
图像可能正在被收件人邮件服务器过滤,请尝试base64_encode该图像,即:
$image = file_get_contents('http://your-click.ch/wp-content/uploads/2014/11/logo1.png');
$message = '<img src="data:image/png;base64,'.base64_encode($image).'" alt="Your Click" width="131" height="52" border="0" />';发布于 2015-05-11 08:59:04
看看下面的内容是否有帮助
$message = '<img src="http://your-click.ch/wp-content/uploads/2014/11/logo1.png" alt="Your Click" width="131" height="52" border="0" style="width:131px; height:52px; border:0px; background:url('http://your-click.ch/wp-content/uploads/2014/11/logo1.png')" />';https://stackoverflow.com/questions/30158223
复制相似问题