IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

ASP Discussion :

href ne fonctionnent pas lors d'un envoi de mail HTML avec CDO.


Sujet :

ASP

  1. #1
    En attente de confirmation mail
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Mars 2007
    Messages
    30
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2007
    Messages : 30
    Points : 40
    Points
    40
    Par défaut href ne fonctionnent pas lors d'un envoi de mail HTML avec CDO.
    Dans la pluspart des webmails, quand j'envoie un mail via CDO, les liens href se voient ajouter un "!" au milieu de l'adresse, ce qui tue le lien.
    J'ai contourné le problème sur les webmail testés en entourant la balise a par une balise span, mais c'est pas propre... Comment faire autrement?
    J'utilise un template que je lis dans mon code ASP, et dans le template (Mail.html), je mets:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
     
    <html>
        <head><title>Mon titre</title>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    <style type="text/css">
    <!--
    body {
    	background-color: #6699cc;
    }
    body,td,th {
    	font-family: Arial, Helvetica, sans-serif;
    	color: #FFFFFF;
    }
    .Style1 {
    	font-size: 24px;
    	font-weight: bold;
    }
    a:link {
    	color: #FFFFFF;
    }
    a:visited {
    	color: #FFFFFF;
    }
    a:hover {
    	color: #FF0000;
    }
    a:active {
    	color: #FFFFFF;
    }
    .Style2 {
    	font-size: x-small;
    	font-style: italic;
    }
    .Style4 {font-size: 36px; font-weight: bold; }
    -->
    </style></head>
         <body bgcolor="#6699cc">
    <HR>
    <table width="90%" border="0" align="center">
      <tr>
        <td align="center" valign="middle" width="100"><span class="Style1"><img src='cid:Visuel.jpg'></span></td>
        <td valign="middle"><span class="Style4">Un titre</span></td>
      </tr>
    </table>
    <HR>
    </p>
     
    Bonjour {#Tag1#},
    <p>Nous avons bien r&eacute;cup&eacute;r&eacute; vos codes personnels.</p>
             du texte... 
            <a href="http://www.monadresse.com">Le texte pour mon adresse</a> 
             Encore du texte...
         </body>
    </html>
    Autant dire, rien d'exceptionnel...

    Dans la page de traitement ASP, j'utilise le code suivant:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    27
    28
    29
    30
    31
    32
    33
    34
     
    function EnvoiMail(MailTo, Name, FirstName)
    IF MailTo <> "" THEN
        Dim ObjSendMail
        Set ObjSendMail = CreateObject("CDO.Message") 
        ObjSendMail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/sendusing")  = 2 'Send the message using the network (SMTP over the network).
        ObjSendMail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "Mon adresse de smtp"
         ObjSendMail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25 
         ObjSendMail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = False 'Use SSL for the connection (True or False)
         ObjSendMail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout") = 60
         ObjSendMail.Configuration.Fields.Update
     
         Set FileObj_ = Server.CreateObject("Scripting.FileSystemObject")
         IF (FileObj_.FileExists(Server.MapPath("Mail.html"))) THEN
              Set file_ = FileObj_.OpenTextFile(Server.MapPath("Mail.html"), 1, False, -2)
         ELSE
               Set file_ = ""
                Response.Write("Fichier non trouvé")
         END IF
     
         ObjSendMail.To = MailTo
         ObjSendMail.Subject = "Vos informations de connexion à votre compte"
         ObjSendMail.From = "Adresse mail pour l'envoi"
     
          DO WHILE NOT file_.AtEndOfStream
               texte_ = file_.readLine
               texte_ = Replace (texte_, "{#Tag1#}", FirstName + " " + Name)
               ObjSendMail.HTMLBody = ObjSendMail.HTMLBody + texte_
           LOOP
           ObjSendMail.AddAttachment Server.MapPath("Visuel.jpg"), "picture1", "picture1"			
           ObjSendMail.Send
           Set ObjSendMail = Nothing
    END IF
    End Function
    Quelqu'un pourrait-il m'aider?

  2. #2
    En attente de confirmation mail
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Mars 2007
    Messages
    30
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2007
    Messages : 30
    Points : 40
    Points
    40
    Par défaut
    Personne n'a d'idée?

  3. #3
    Expert éminent
    Avatar de Immobilis
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2004
    Messages
    6 559
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Mars 2004
    Messages : 6 559
    Points : 9 506
    Points
    9 506
    Par défaut
    Salut,

    Apparement, il existe une methode CreateMHTMLBody qui créé le mail à partir d'une page web. Remplace ObjSendMail.HTMLBody par ObjSendMail.CreateMHTMLBody pour voir.

    A+
    "Winter is coming" (ma nouvelle page d'accueil)

  4. #4
    En attente de confirmation mail
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Mars 2007
    Messages
    30
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2007
    Messages : 30
    Points : 40
    Points
    40
    Par défaut
    ça ne foncitonne pas...
    Il me dit que le protocole spécifié est introuvable...

  5. #5
    En attente de confirmation mail
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Mars 2007
    Messages
    30
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2007
    Messages : 30
    Points : 40
    Points
    40
    Par défaut
    C'est bon, j'ai finalement résolu le problème: j'avais oublié de rajouter les caractères de fin ce ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     texte_ = texte_ & vbCrLf
    dans la récupération du contenu du template. Aparemement, c'est ça qui faisait tout planter.

    Merci pour ton aide.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [AC-2010] Problème d'envoie de mail html avec CDO
    Par lololebricoleur dans le forum VBA Access
    Réponses: 1
    Dernier message: 11/11/2013, 14h21
  2. [UNIX] envoi de mail HTML avec mailx
    Par darinze dans le forum Développement
    Réponses: 3
    Dernier message: 21/09/2011, 14h24
  3. Réponses: 4
    Dernier message: 02/04/2007, 18h17
  4. Réponses: 4
    Dernier message: 06/03/2006, 16h14
  5. [CSS] Envoi de mail html avec CSS et image jointe
    Par firejocker dans le forum Mise en page CSS
    Réponses: 1
    Dernier message: 03/03/2006, 08h53

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo