Gmail + password recovery
Bonjour,
J'ai des problèmes avec la procédure de récupération de mdp avec gmail. Attendez avant de me pendre en fait j'ai trouvé comment créer ma propre classe de mail :
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 27 28 29 30 31 32 33 34 35 36 37 38 39
|
Public Function EnvoieMail(ByVal pAdressesMailDestination As String, ByVal pSubject As String, ByVal pBody As String) As Boolean
Try
Dim lFromAdresse, lUtilisateur, lPassword, lServeur, lPort, lStatutSSL As String
lFromAdresse = System.Configuration.ConfigurationManager.AppSettings("AdresseExpediteur")
lServeur = System.Configuration.ConfigurationManager.AppSettings("SmtpServeur")
lPort = System.Configuration.ConfigurationManager.AppSettings("SmtpPort")
lUtilisateur = System.Configuration.ConfigurationManager.AppSettings("SmtpUtilisateur")
lPassword = System.Configuration.ConfigurationManager.AppSettings("SmtpPassword")
lStatutSSL = System.Configuration.ConfigurationManager.AppSettings("SmtpSSL")
'create the mail message
Dim lMailMessage As New MailMessage()
'set the addresses
lMailMessage.From = New MailAddress(lFromAdresse)
lMailMessage.To.Add(pAdressesMailDestination)
'set the content
lMailMessage.Subject = pSubject
'body
lMailMessage.Body = pBody
'Port 587 is another SMTP port
Dim smtp As New SmtpClient(lServeur, lPort)
smtp.Credentials = New NetworkCredential(lUtilisateur, lPassword)
smtp.EnableSsl = lStatutSSL
smtp.Send(lMailMessage)
Return True
Catch e As Exception
Return False
End Try
End Function |
Que j'appel comme ceci :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
|
Protected Sub PasswordRecovery1_SendingMail(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.MailMessageEventArgs) Handles PasswordRecovery1.SendingMail
If (EnvoieMail("xxxx@xxxxx", "test", "coucou")) Then
Dim message As String
message = "Envoie du mail de récupération de mot de passe avec succés"
Response.Write("<body><script>alert(""" & message & """);</script></body>")
Else
Dim message As String
message = "Echec de l'envoie du mail de récupération de mot de passe, veuillez réessayer"
Response.Write("<body><script>alert(""" & message & """);</script></body>")
End If
End Sub |
Avec dans ma page aspx :
Code:
1 2
| <asp:PasswordRecovery ID="PasswordRecovery1" runat="server" Visible="False"
SuccessPageUrl="~/Login.aspx" onsendingmail="PasswordRecovery1_SendingMail"> |
L'envoie de mail en dehors de password recovery marche mais dedans
j'obtiens : une erreur (L'adresse de messagerie de l'expéditeur doit être section de configuration system.net/mailSettings/smtp) je sais que c'est dans le web config dans <mail settings> mais moi j'ai mis le tout dans
Code:
1 2 3 4 5 6 7 8 9
|
<appSettings>
<add key="AdresseExpediteur" value="xxxxxxxx@xxxxx" />
<add key="SmtpServeur" value="smtp.gmail.com" />
<add key="SmtpPort" value="587" />
<add key="SmtpUtilisateur" value="xxxxx@xxxx" />
<add key="SmtpPassword" value="xxxx" />
<add key="SmtpSSL" value="true" />
</appSettings> |
Mon but c'est de substituer la procédure d'envoi de mail de <password recovery> de base par la mienne (qui gere le ssl :yaisse2:).
Et donc l'objet de ma requête...
- Comment lui dire qu'il faut qu'il utilise ma fonction avec la conf dans appSetting et qu'il m'envoie mon mail pré formaté contenant les infos de l'usager la vérif est ok?
Code:
1 2 3 4 5
|
[...]
<td align=right style="width: 120px">Nom d'utilisateur:</td><td><strong><%UserName%></strong></td>
<td align=right style="width: 120px">Mot de passe:</td><td><strong><%Password%></strong></td>
[...] |
Je sais pas si j'ai été clair :)
Merci pour vos réponses qui me sortiront du vide intersidérale :bug:
Benjamin