Insérer une image dans un tableau HTML envoyée par sendmail

Insérer une image dans un tableau HTML envoyée par sendmail - HTML/CSS - Programmation

Marsh Posté le 29-03-2016 à 13:41:19    

Bonjour,
 
J'envoie un mail par le script ci-dessous en utilisant sendmail, un tableau HTML dans lequel je souhaite inclure une image.  
 
DST=toto@titi.com
(
echo "Subject:Rapport de sauvegarde "
echo "to:$DST"
echo "MIME-Version: 1.0"
echo 'Content-Type: multipart/mixed; boundary="-q1w2e3r4t5"'
 
echo '---q1w2e3r4t5'
echo "Content-Type: text/html"
echo "Content-Disposition: attachment; filename=rapport_sauvegarde_TSM.html"
cat $RESULTAT/rapport.html
echo '---q1w2e3r4t5'
 
echo "Content-Type: image/jpg;name="LOGO.jpg""
echo "Content-Transfer-Encoding: base64"
echo "Content-Id: monlogo"
echo "Content-Disposition: inline ; filename="LOGO.jpg""
uuencode -m $RESULTAT/LOGO.jpg LOGO.jpg
 
echo '---q1w2e3r4t5'
) | /usr/sbin/sendmail -f $DST $DST
 
 
Dans mon fichier HTML, j'ai le code:
<body>
<img src="cid:monlogo" alt="monlogo">
 
 
et...je ne vois pas mon image dans le fichier. Pourtant, l'image est bien jointe au mail.  Je ne vois pas mon erreur.   :(  
J'ai aussi essayé avec Content-Disposition: attachment, Je tourne en rond.  :cry:  
 
Merci de votre aide.


Message édité par bob737 le 29-03-2016 à 13:42:10
Reply

Marsh Posté le 29-03-2016 à 13:41:19   

Reply

Marsh Posté le 29-03-2016 à 17:57:51    

Completement au pif: Content-ID (deux majuscules)??

Reply

Marsh Posté le 29-03-2016 à 18:07:30    

j'y ai cru...  :whistle:  mais non.  :D

Reply

Marsh Posté le 30-03-2016 à 11:05:31    

Je doute qu'on puise afficher une image dans un tableau HTML autrement qu'en lui donnant une url qui pointe sur un fichier stocké sur un serveur. Je pense pas qu'on puisse faire référence à un fichier attaché dans un mail. :non:


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
Reply

Marsh Posté le 30-03-2016 à 11:09:26    

Reply

Marsh Posté le 30-03-2016 à 12:12:29    

rufo a écrit :

Je doute qu'on puise afficher une image dans un tableau HTML autrement qu'en lui donnant une url qui pointe sur un fichier stocké sur un serveur. Je pense pas qu'on puisse faire référence à un fichier attaché dans un mail. :non:


 
 
Dans mon cas, l'image n'est pas inséré dans le tableau. Le tableau est en dessous.  
 
<body>
<img src="cid:monlogo" alt="monlogo.jpg">
 
 
   </DIV></TD>
</TR></TABLE>
..
..
..
</TABLE> </DIV></TD>
  </TR></TABLE>
 
 

Reply

Marsh Posté le 30-03-2016 à 12:18:42    

Reply

Marsh Posté le 30-03-2016 à 12:34:47    

Reply

Marsh Posté le 30-03-2016 à 13:40:04    


 
 ce n'est pas un problème d'anglais mais je ne vois pas bien la solution à mon problème.
Une explication serait mieux qu'un lien. Des pages web , j'en ai lu beaucoup avant de poser ma question sur le forum.  :hello:  
 

Reply

Marsh Posté le 30-03-2016 à 14:53:10    


Je ne connaissais pas cette technique. Après, comme je m'en doutais, le résultat est variable en fonction du client mail. le coup de mettre une url de l'image pointant sur un serveur est plus classique et a plus de chance de fonctionner partout. :o


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
Reply

Marsh Posté le 30-03-2016 à 14:53:10   

Reply

Marsh Posté le 30-03-2016 à 15:51:02    

Dans mon cas, l'image est envoyé avec le mail. je ne peux pas la mettre sur un site. Elle doit être lu à partir du mail.  
 
une idée?

Reply

Marsh Posté le 30-03-2016 à 16:02:04    

Ben t'applique ce qui est expliqué dans le lien donné.


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
Reply

Marsh Posté le 30-03-2016 à 16:14:49    

Ben c'est ce que j'ai fait si tu regarde mon premier post et pourtant l'image est bien présente en pièce jointe dans le mail et mon dans le fichier HTML

Reply

Marsh Posté le 30-03-2016 à 16:15:28    

Désolé, j'avais mal compris ton problème, tu as essayé :
http://stackoverflow.com/questions [...] ot-working


---------------
D3
Reply

Marsh Posté le 30-03-2016 à 16:53:24    

oui mais je ne vois pas vraiment la différence.  
 
(
echo "Subject:Périmètre $EQUI: rapports quotidien de sauvegarde et archivage"
echo "to:$DST"
echo "MIME-Version: 1.0"
echo 'Content-Type: multipart/mixed; boundary="-q1w2e3r4t5"'
 
echo '---q1w2e3r4t5'
echo "Content-Type: text/html"
echo "Content-Disposition: attachment; filename=rapport_sauvegarde.html"
cat $RESULTAT/${EQUI}_rapport_${DATE}.html
echo '---q1w2e3r4t5'
 
echo "Content-Type: image/jpeg;name=\"natixis.jpg\""
echo "Content-Transfer-Encoding: base64"
echo "Content-ID: <logo.jpg>"
echo "Content-Disposition: inline; filename=\"logo.jpg\""
uuencode -m $RESULTAT/logo.jpg logo.jpg
echo '---q1w2e3r4t5'
) | /usr/sbin/sendmail -f $DST $DST
 
et dans mon fichier html, j'ai  
<body>
<img src="cid:logo.jpg"  alt="logo.jpg">
 

Reply

Marsh Posté le 30-03-2016 à 17:04:19    

Attends, si j'ai bien compris, c'est pas le corps du mail en HTML qui contient l'image mais le fichier HTML lui-même en pièce jointe du mail. C'est pas du tout la même chose. :non:


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
Reply

Marsh Posté le 30-03-2016 à 17:05:26    

Question conne : qu'est-ce que tu t'embêtes à envoyer un fichier HTML en pièce jointe contenant des images alors que tu pourrais envoyer un simple fichier PDF qui contiendrait l'ensemble :??:


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
Reply

Marsh Posté le 30-03-2016 à 17:17:08    

rufo a écrit :

Attends, si j'ai bien compris, c'est pas le corps du mail en HTML qui contient l'image mais le fichier HTML lui-même en pièce jointe du mail. C'est pas du tout la même chose. :non:


 
Oui, c'est ça.  J'ai le fichier HTML et le JPG qui sont en pièces jointes et le fichier HTML fait appel au jpg.

Reply

Marsh Posté le 30-03-2016 à 17:23:11    

rufo a écrit :

Question conne : qu'est-ce que tu t'embêtes à envoyer un fichier HTML en pièce jointe contenant des images alors que tu pourrais envoyer un simple fichier PDF qui contiendrait l'ensemble :??:


 
 
Comment fais-tu ça?  
 
Attention, j'aurai forcement en entrée le fichier HTML et l'image, car à terme, l'image sera un graphique en png ou jpg.

Reply

Marsh Posté le 30-03-2016 à 17:37:33    

Pourquoi l'entrée serait forcément un html ? Quelle est la contrainte ? Si celle-ci ne peut être enlevée, alors, en fonction de la complexité du fichier html, soit tu le transformes toi-même en PDF (si fichier au contenu simple) via un langage de dév comme PHP ou autre langage de script (+ la lib qui va bien), soit tu passes par une imprimante virtuelle (fichier html complexe) en ligne de commande qui te fera la conversion (ex : WkhtmlToPdf).


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
Reply

Marsh Posté le 30-03-2016 à 17:54:48    

Ce doit être un HTML car c'est une reprise d'un existant qui doit être ISO pour l'utilisateur.  
 
sinon, j'ai pu insérer mon image mais en mode inline seulement par en attachment.  :??:  

Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed