//$mail->AddEmbeddedImage("data:image/jpeg;base64,'.base64_encode($cmpimage).'", "img","image/*");`
$mail->AddEmbeddedImage("GM Community Profile Image.jpg", "my-attach", "image/jpeg");`
//$mail->Body = '<img alt="hey" src="data:image/jpeg;base64,'.base64_encode($cmpimage).'">';
$mail->Body = '<img alt="PHPMailer" src="cid:my-attach"> ';
我需要一种方式来发送一封电子邮件与它的图像(而不是附件),图像是从表单或database.Im使用phpmailer的邮件目的。
我是新手学习php的尝试和错误fashion.Please帮助我找到一个解决方案。提前谢谢你。
发布于 2017-04-11 17:56:28
您需要做的第一件事是将图像编码为base64。这将生成一个包含编码图像的长字符串,您的编码图像将如下所示
图像数据:
/png;base64,iVBORw0KGgoAAAANSUhEUgAAAtAAAAEICAIAA...
此文本(编码图像)是您在数据库中保存的内容。为此,建议使用BLOB (在MariaDb/MySql中)或任何其他可以保存长文本的数据类型。
例如,您可以使用像这样的在线转换器,或者使用https://www.base64-image.de/内置函数。请参阅Stackoverflow PHP答案:How to convert an image to base64 encoding?
https://stackoverflow.com/questions/43352709
复制