Envoyer un mail en asp.net

Soyez le premier à donner votre avis sur cette source.

Snippet vu 40 218 fois - Téléchargée 35 fois

Contenu du snippet

Il vous suffit de coller ce script sur une page, de la renommer mail.aspx, et vous pourrez envoyer des mails via ASP.NET
!!!! ATTENTION!!!!!!
Votre serveur doit accepter l'ASP.NET
Le .NET FRAMEWORK doit être installé sur le serveur

Source / Exemple :


<%@ Page Language="C#" Debug="True" %>
<%@ Import namespace="System.Web.Mail" %>

<script runat="server" language="C#">

void Envoi_Click(Object sender, EventArgs E) {
// évènement est déclenché sur click du bouton envoyer du formulaire 

// Création de l'instance d'une nouvelle classe MailMessage
MailMessage maildef=new MailMessage();

// adresse de l'expéditeur et du destinataire
maildef.From = expediteur.Text;
maildef.To = destinataire.Text;

// sujet du message
maildef.Subject = sujet.Text;

// corps du message
maildef.Body = message.Value;

// adresse smtp du serveur de Mail
SmtpMail.SmtpServer = "smtp.infonie.fr";

// Envoie du message 
SmtpMail.Send(maildef);

// confirmation de l'envoie
confirmation.Text="Le mail a été envoyé";

} 

</script>

<HTML>
<HEAD>
</HEAD>

<BODY>

<form runat="server" method="POST">

<asp:label id="confirmation" runat="server" /><br>

Expéditeur : <br>
<asp:textbox id="expediteur" runat="server"/><br>

Destinataire :<br>
<asp:textbox id="destinataire" runat="server"/><br>

Sujet :<br>
<asp:textbox id="sujet" runat="server"/><br>

Message : <br>
<textarea id="message" runat="server"/><br>

<asp:button Text="Envoyer" OnClick="Envoi_Click" runat=server/>

</form>

</BODY>

</HTML

Conclusion :


Vous pouvez aussi utiliser les classes
// MailAttachement (fichier joint)
MailAttachment fichier1 = new MailAttachment("c:\\fichier1.htm");
maildef.Attachments.Add(fichier1);

// MailFormat (brut ou html)
maildef.BodyFormat = MailFormat.Html;

// MailPriority (basse, normale ou haute)

maidef.Priority = normal;
maildef.Priority = low;
maildef.Priority = high;

A voir également

Ajouter un commentaire

Commentaires

Messages postés
188
Date d'inscription
mardi 15 novembre 2005
Statut
Membre
Dernière intervention
8 octobre 2009

ouf! c'est clair dans ma tete .
ok moi c'est pareil.
en effet je veux faire la meme chose.
Mais sauf que ton code ne marche pas chez moi.et on me demande d'inserer les information du formulaire (envoimsg)dans une base BDmessagerie
la base est en Sql server.
mais je ne parviens pas a envoyer mes mail en gros a creer un enregistrement dans une table.
pourvoir par la suite afficher ds un tablo l'historique des message.
pour vl'envoit des message voici ce que j'ai fait.
à l'aide please

code:

<%@ Page Language="VB" AutoEventWireup="false" %>
<%@ Import Namespace="System.Data.SqlClient" %>



<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<script runat="server">


Protected Sub objet_TextChanged(ByVal sender As Object, ByVal e As System.EventArgs)

End Sub

Protected Sub btn_envoi_msg_Click(ByVal sender As Object, ByVal e As System.EventArgs)

Dim InsertText, lblMsg As String
Dim j As Integer
Dim int_Admin As Integer = 0
Dim int_Fact As Integer = 0
Dim int_Devis As Integer = 0
' Connection à  la base de données
Dim cn As New SqlConnection()
cn.ConnectionString = ConfigurationSettings.AppSettings("WTS_ExtraSQL")
cn.Open()

'création d'un mail

InsertText = "INSERT INTO wts_messagerie_interne(expediteur,destinateur,objet,message) VALUES ( lb_expediteur.Text, lb_destinataire.Text lb_objet, txtmsg )"

Dim Ins1 As New SqlCommand(InsertText, cn)
Try
j = Ins1.ExecuteNonQuery()
lblMsg = "l'Agent a été Ajouté"
Response.Redirect("accueil_societe.aspx")
Catch ex As Exception
lblMsg = "erreur lors de l'ajout"
End Try
Ins1 = Nothing
cn.Close()
End Sub

</script>
<html>..........</html>
Messages postés
46
Date d'inscription
mercredi 13 novembre 2002
Statut
Membre
Dernière intervention
14 avril 2005
1
Salut Serge,
Mon code est du VB.net est fait parti d'une page ".aspx".
Il s'agit donc d'asp.net codé en VB.net.
;)
Messages postés
188
Date d'inscription
mardi 15 novembre 2005
Statut
Membre
Dernière intervention
8 octobre 2009

salut a tous:
Nouveau je voudrait savoir s'il est logique qu'au debut on ait:
Page Language="VB" mais l'extension aspx il s'agit de quoi dans ce cas'asp.net ou vb.net?

je voudrais savoir si quelqu'un a le meme code en aspx ?
Messages postés
3
Date d'inscription
mercredi 22 septembre 2004
Statut
Membre
Dernière intervention
4 janvier 2006

j'essaie le code mais je heurte sur le bug suivant:

Parser Error Message: The XML file c:\winnt\microsoft.net\framework\v1.1.4322\Config\machine.config could not be loaded. Attempted to access an unloaded AppDomain.

quelqu'un pour m'aider:(
Messages postés
3
Date d'inscription
mercredi 22 septembre 2004
Statut
Membre
Dernière intervention
4 janvier 2006

J'aimerais utiliser un compte SMTP pour envoyer des mails. Comment préciser le username et le password? En fait j'utilise un serveur smtp qui n'autorise pas de open relay.

Merci d'avance
Afficher les 33 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.

Du même auteur (cs_everest)