Insérer une image dans un tableau HTML envoyée par sendmail - HTML/CSS - Programmation
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.
Marsh Posté le 30-03-2016 à 11:09:26
ReplyMarsh 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. |
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>
Marsh Posté le 30-03-2016 à 12:18:42
ReplyMarsh Posté le 30-03-2016 à 12:34:47
ReplyMarsh 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.
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.
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?
Marsh Posté le 30-03-2016 à 16:02:04
Ben t'applique ce qui est expliqué dans le lien donné.
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
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
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">
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.
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
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. |
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.
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.
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).
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.
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.
Merci de votre aide.
Message édité par bob737 le 29-03-2016 à 13:42:10