none
Envoi automatique d'un mail depuis une page ASP.NET RRS feed

  • Question

  • Je vous expose mon problème.
    j'ai réalisé un site de pétition et il faudrait qu'un mail parvienne au signataire quand il presse sur le bouton "signer".
    J'ai donc prévu le code suivant :

            Dim emailMsg As System.Net.Mail.MailMessage = New System.Net.Mail.MailMessage()
            emailMsg.From = New System.Net.Mail.MailAddress("no-reply@juifsdegauche.org")
            emailMsg.To.Add(Email.Text)
            emailMsg.Subject = "Merci de votre soutien"
            emailMsg.IsBodyHtml = True
            emailMsg.Body = "<html>" & _
         "<head>" & _
         "<meta http-equiv=""Content-Language"" content=""fr"">" & _
         "<meta http-equiv=""Content-Type"" content=""text/html; charset=windows-1252"">" & _
         "</head>" & _
         "<body>" & _
         "<p>Nous vous remercions d'avoir signé la pétition sur <a href=""http://www.juifsdegauche.org"">www.juifsdegauche.org</a>.<br>Pour vous associer davantage à cette initiative des Juifs de gauche, merci de faire circuler le lien vers notre site. Merci encore à vous !</p>" & _
         "</body>" & _
         "</html>"
            Dim emailSnd As System.Net.Mail.SmtpClient = New System.Net.Mail.SmtpClient()
            emailSnd.Host = "smtp.noos.fr"
            emailSnd.Port = 25
            emailSnd.Send(emailMsg)


    Cela marche parfaitement en local.

    mais mis en ligne, j'ai une erreur de compilation :

    Object reference not set to an instance of an object.

    Pourtant, dans Visual Studio, je n'ai ni avertissement ni erreur.

    Voilà la pile de débug :

    [NullReferenceException: Object reference not set to an instance of an object.]
    System.Net.Mail.AuthCommand.Send(SmtpConnection conn, String message) +29
    System.Net.Mail.SmtpConnection.GetConnection(String host, Int32 port) +1528
    System.Net.Mail.SmtpTransport.GetConnection(String host, Int32 port) +316
    System.Net.Mail.SmtpClient.GetConnection() +42
    System.Net.Mail.SmtpClient.Send(MailMessage message) +1485

    [SmtpException: Failure sending mail.]
    System.Net.Mail.SmtpClient.Send(MailMessage message) +2074
    ASP.picture_library_default4_aspx.InsertDatas(Object Source, EventArgs e) +354
    System.Web.UI.WebControls.Button.OnClick(EventArgs e) +105
    System.Web.UI.WebControls.Button.RaisePostBackEvent(String eventArgument) +107
    System.Web.UI.WebControls.Button.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument) +7
    System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) +11
    System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) +33
    System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +5102



    lundi 12 mars 2007 12:42

Réponses

  • Je te conseil de mettre des Try catch pour la création et l'envoi. Ton erreur c'est peut-être ton adresse email qui est vide ou qu'il ne trouve pas. Sinon ça peut être ton host qui n'est pas bon, si le host est sur la même machine tu peux essayer localhost.

    jeudi 15 mars 2007 14:19

Toutes les réponses

  • Je te conseil de mettre des Try catch pour la création et l'envoi. Ton erreur c'est peut-être ton adresse email qui est vide ou qu'il ne trouve pas. Sinon ça peut être ton host qui n'est pas bon, si le host est sur la même machine tu peux essayer localhost.

    jeudi 15 mars 2007 14:19
  • En effet, en mettant sur l'host sur 127.0.0.1 ça fonctionne !

    Merci !
    jeudi 15 mars 2007 17:36