我正在使用phphmailer并附加了一个图像,它只显示图像而不是图像本身这里是我的代码 你能帮忙吗?
$mail->AddEmbeddedImage('2.jpg', '2img', '2.jpg');
$mail->Subject = "Order Form: Contact form submitted";
$mail->Body = $body . 'img src="../../photo/2img" ;
注意:我已经删除了html标签,因为我收到错误发送此问号。
答案 0 :(得分:21)
每PHPMailer Manual,您应该使用方法AddEmbeddedImage
$mail->AddEmbeddedImage(filename, cid, name); By using this function with this example's value above, results in this code: $mail->AddEmbeddedImage('my-photo.jpg', 'my-photo', 'my-photo.jpg ');像这样:
$mail->AddEmbeddedImage("rocks.png", "my-attach", "rocks.png");
$mail->Body = 'Embedded Image: <img alt="PHPMailer" src="cid:my-attach"> Here is an image!';
所以cid:my-attach
将替换为电子邮件正文中图片的内联源
答案 1 :(得分:-1)
使用AddEmbeddedImage()函数可以很好地显示基于Web的电子邮件中的嵌入图像。但是,雅虎总是将其添加为附件。要解决这个问题,你可以安全地忽略AddEmbeddedImage()并链接到服务器上图像的完整路径,PHPMailer有能力将其转换为CID,它将正确显示为嵌入式图像,雅虎不会添加它作为一个附件了。
在邮件的html正文中,像往常一样添加它:
<img src="http://PATH-TO-IMAGE" alt='THIS IS THE IMAGE" />