Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > Langages serveur > ASP
ASP Forum sur la programmation ASP. Avant de poster : Cours ASP, FAQ ASP
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 17/09/2008, 15h06   #1
Membre du Club
 
Inscription : juin 2005
Messages : 97
Détails du profil
Informations forums :
Inscription : juin 2005
Messages : 97
Points : 56
Points : 56
Par défaut envoyer un email en UTF-8

Bonjour,

je n'arrive pas à envoyer un email html en utf-8

je recupère le texte dans ma bdd (access)
je l'affiche à l'écran avant de l'envoyer, c'est OK

j'envoie le mail et en reception, les caracteres accentués sont pas bon

j'ai,par exemple, récentes , au lieu de récentes

voici ma procédure d'envoi

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
Sub envoyermail(sujet,corps,adrsource,adrdest,nom,prenom)
 
temp=corps
temp=replace(temp,"[NOM]",nom)
temp=replace(temp,"[PRENOM]",prenom)
temp=replace(temp,"[EMAIL]",adrdest)
temp=replace(temp,"""""","""")
'  http://support.microsoft.com/kb/324649/en-us/
 
Set objNewMail = Server.CreateObject("CDONTS.NewMail")
objNewMail.From=adrsource
objNewMail.To=adrdest
objNewMail.Subject=sujet
objNewMail.Body=temp
objNewMail.BodyFormat=0 ' pour un mail html
objNewMail.MailFormat=0 ' pour un mail html
objNewMail.SetLocaleIDs(65001) ' 65001 est le code page pour Unicode
objNewMail.Value("MIME-Version") = "1.0"
objNewMail.Value("Content-Type") = "text/plain; charset=utf-8"
objNewMail.Value("Content-Transfer-Encoding") = "8bit"
 
objNewMail.Send
 
set objNewMail = Nothing
 
end sub
ddeee est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/09/2008, 00h05   #2
Membre du Club
 
Inscription : juin 2005
Messages : 97
Détails du profil
Informations forums :
Inscription : juin 2005
Messages : 97
Points : 56
Points : 56
je me réponds

l'objet CDONTS est obsolete depuis longtemps
je suis donc passé à CDO mais j'ai encore un probleme
voici mon code

Code :
1
2
3
4
5
6
7
8
Set myMail=CreateObject("CDO.Message")
myMail.Subject="Sending email with CDO"
myMail.From="yyy@yyy.fr"
myMail.To="xxx@xxx.fr"
myMail.BodyPart.Charset = "utf-8"  
myMail.HTMLBody = "<h1>This is a message.é</h1>"
myMail.Send
set myMail=nothing

le code source du mail que je recois est le suivant

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
------=_NextPart_000_0BFB_01C919E9.70F0E680
Content-Type: text/plain;
	charset="utf-8"
Content-Transfer-Encoding: quoted-printable
 
 
This is a message.=C3=A9
 
 
------=_NextPart_000_0BFB_01C919E9.70F0E680
Content-Type: text/html;
	charset="utf-8"
Content-Transfer-Encoding: quoted-printable
 
<h1>This is a message.=C3=A9</h1>
------=_NextPart_000_0BFB_01C919E9.70F0E680--
en mettant myMail.BodyPart.Charset = "utf-8" les caracteres sont bien encodés en UTF-8 et l'entete Content-Type: text/html; charset="utf-8" est ajouté

moi j'envoie deja un texte UTF-8, je veux juste fixer le header "content-type" du mail

je ne sais pas si je suis bien clair
je veux juste que CDO mette le header Content-Type: text/html; charset="utf-8" mais il ne doit pas transcoder mon texte
ddeee est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 06h03.


 
 
 
 
Partenaires

Hébergement Web