106 votes

Envoyer un email avec PHPMailer - incorporer une image dans le corps

Je suis en train d'envoyer un mail en HTML, avec PHPMailer, avec des images. Le corps est chargé à partir d'un fichier html, qui contient toutes les infos.

Lors de l'envoi de l'e-mail, l'image n'apparaît pas dans le corps, bien que j'ai même envoyer l'image aussi comme une pièce jointe.

HTML <img> balise de points à la même place que l'endroit.

PHP:

$mail->AddAttachment('img/2u_cs_mini.jpg');

Comment puis-je faire de l'html point à la pièce jointe afin que l'image puisse être chargé dans le corps.

En regardant l'exemple qui vient avec PHPMailer je ne remarque pas de différence, et dans leur cas, l'image ne s'affiche.

218voto

elvispt Points 1258

J'ai trouvé la réponse:

$mail->AddEmbeddedImage('img/2u_cs_mini.jpg', 'logo_2u');

et sur l' <img> balise de mettre src='cid:logo_2u'

0voto

Tom Wright Points 4374

Il est de coutume pour héberger les images sur votre serveur, puis de les lier à distance. Ce (IIRC), permet d'économiser de l'infrastructure de messagerie d'avoir à traiter avec un grand nombre de pièces jointes.

Je suis sûr que c'est possible de faire un lien vers une pièce jointe, mais ce n'est pas l'approche la plus commune.

0voto

fabrik Points 7073

Je vous suggère de faire un lien source de l'image avec le chemin complet comme:

http://www.example.com/img/2u_cs_mini.jpg

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X