Fabriquer un email en HTML

Fabriquer un email en HTML - HTML/CSS - Programmation

Marsh Posté le 04-06-2011 à 22:13:04    

Je ne cherche pas à faire de la diffusion d'emails, je veux fabriquer, par programme, un seul email sous forme d'un fichier html.
mais je ne désire pas l'envoi automatique.
Un exemple: j'ai une série de photos que je veux envoyer à un correspondant. Je crée un fichier .htm avec la structure adéquate, avec les chemins d'images sous forme de balises <IMG SRC= etc. suivies de commentaires (nom du fichier par exemple) correspondants.
 
Puis je vais dans Windows Mail (sous Vista), je clique 'Créer un message', dans la fenêtre message obtenue je clique le menu 'Format', 'Texte enrichi (HTML)', puis menu 'Insertion', 'Texte du fichier', et là je donne mon fichier .htm.
 
Le fichier est interprété correctement dans la fenêtre, sauf les images qui ne sont pas affichées (petite croix rouge).
Si je vais dans 'Source', je m'aperçois que tous les chemins d'images sont supprimés.
Contenu de mon fichier htm:

Quelques images:<BR>
<img src="C:\Photos\maphoto.jpg width=640 height=480 alt="maphoto.jpg"></img><BR>
<img src="C:\Photos\monimage.jpg width=640 height=480 alt="monimage.jpg"></img><BR>


Ce que je retrouve dans 'Source':

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META content="text/html; charset=iso-8859-1" http-equiv=Content-Type>
<META name=GENERATOR content="MSHTML 8.00.6001.19048">
<STYLE></STYLE>
</HEAD>
<BODY bgColor=#ffffff>
<DIV>Quelques images:<BR><IMG src="" maphoto.jpg?></IMG><BR><IMG src=""  
monimage.jpg?></IMG><BR></DIV></BODY></HTML>


J'ai essayé différentes syntaxes pour donner le chemin de l'image après recherches sur le web: file:///c:\Photos... par exemple,  
mais rien à faire, le nom de l'image est effacé.
 
Quelqu'un a-t-il une idée de la syntaxe correcte ?
 

Reply

Marsh Posté le 04-06-2011 à 22:13:04   

Reply

Marsh Posté le 06-06-2011 à 09:19:27    

La balise <img> est mal renseignée.
Au lieu de

<IMG src=""  monimage.jpg?></IMG>


Ecrire

<IMG src="monimage.jpg">


Voir la doc, par exemple : http://www.tizag.com/htmlT/images.php , http://www.w3schools.com/tags/tag_IMG.asp .
 

Reply

Marsh Posté le 06-06-2011 à 14:40:37    

Merci, mais non, la balise est bien renseignée, voir l'encadré du haut.
Le <IMG src="" monimage.jpg?> c'est ce que je retrouve à l'arrivée en regardant dans 'Source', ce que j'ai envoyé était correct. Je voulais simplement savoir pourquoi le contenu entre quotes avait été supprimé.
 
Entre parenthèses, je crois bien que j'ai inventé la balise </IMG> qui semble-t-il n'existe pas. Mais bon, ça ne gêne pas.

Reply

Marsh Posté le 06-06-2011 à 15:37:10    

Non, tes img ne sont pas correctes, il manque des guillemets après .jpg dans src

Reply

Marsh Posté le 06-06-2011 à 16:27:58    

Ah, ok, l'exemple donné était pour le code, après une transformation.
Mais alors, il faudrait nous donner un exemple d'une ligne avant la transformation.
Il y a probablement un cas spécial, par exemple un espace dans un chemin, un caractère accentué, des apostrophes, des commentaires mal placés, ou autre chose.
Si on ne voit pas un exemple du vrai code, il est difficile de comprendre ce qui peut se passer.

Reply

Marsh Posté le 06-06-2011 à 21:58:57    

Désolé et merci beaucoup Paulp, effectivement le guillemet de fin m'avait échappé ! erreur bête...
 
N'empêche... il y a quand même quelque chose qui m'échappe (après rectification des guillemets).
Dans Windows Mail,  
- si je clique sur 'Répondre' à un message et que j'insère mon fichier html, les images sont bien affichées. Si je regarde dans Source, il a modifié mes balises de la façon suivante:

<IMG src="file:///c:/Photos/maphoto.jpg" ...>


- Par contre, si je clique sur 'Créer un message', plus d'images,  je retrouve dans Source le <IMG src="", vidé de son contenu. Même si je mets dans le fichier la syntaxe <IMG src="file:///c:/..."
 
Evidemment je peux toujours faire 'Répondre' à un message quelconque, rectifier l'adresse du destinataire puis insérer mon fichier, là ça marche.


Message édité par JL35 le 06-06-2011 à 22:34:46
Reply

Marsh Posté le 07-06-2011 à 10:16:53    

Là ça dépend du logiciel à mon avis.
 
Pour inclure une image, il faut qu'elle soit jointe au mail, avec un header Content-ID spécifique (par exemple maphoto).
Ensuite, dans le HTML, tu mets <img src="cid:maphoto"/>.
 
Bref, ça me paraît compliqué avec Windows Mail ...
 
Une alternative peut être de mettre les images sur imageshack et de mettre leur url dans le src. Du coup, pas de problème de pièce jointe ...

Reply

Marsh Posté le 07-06-2011 à 14:26:05    

Merci pour tes suggestions, je vais essayer, mais de toute façon comme j'ai dit plus haut j'ai une solution.
C'est simplement cette différence de traitement entre 'Répondre' et 'Créer' qui me paraît bizarre.
 
Et puis, comme je constitue mon fichier html par programme, je peux appeler directement en ligne de commande un programme externe que j'ai trouvé, qui prend en compte mon fichier html et qui fait directement l'envoi depuis mon programme.
Il s'agit de SendEmail.exe, gratuit, simple d'emploi, il suffit de renseigner quelques paramètres: expéditeur, destinataire, objet, texte (direct ou sous forme de fichier texte ou html), éventuellement des pièces jointes (ici des photos), donc ça me convient très bien, je n'ai plus à charger ma messagerie.

Reply

Sujets relatifs:

Leave a Replay

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