This Example explains how to Create Forgot Password By Email Page Code In Asp.Net Using C# And VB.NET.
I have placed one textbox and button on the ForgotPassword.aspx page to send mail to email id stored in database.
You can also send Reset Password Link instead of sending Username password in the email.
HTML SOURCE OF FORGOT PASSWORD PAGE
Write following code in Click Event of Button to retrieve username and password associated with EmailID provided by user from database and send the information to this email id.
C# CODE
VB.NET
I have placed one textbox and button on the ForgotPassword.aspx page to send mail to email id stored in database.
You can also send Reset Password Link instead of sending Username password in the email.
HTML SOURCE OF FORGOT PASSWORD PAGE
1: <form id="Form1" runat="server">
2: <div>
3: <fieldset>
4: <legend>Forgot Password</legend>
5: <asp:Label ID="lblEmail" runat="server" Text="Email Address: "/>
6: <asp:TextBox ID="txtEmail" runat="server"/>
7:
8: <asp:RequiredFieldValidator ID="RV1" runat="server"
9: ControlToValidate="txtEmail"
10: ErrorMessage="Please Enter EmailID"
11: SetFocusOnError="True">*
12: </asp:RequiredFieldValidator>
13:
14: <asp:Button ID="btnPass" runat="server" Text="Submit"
15: onclick="btnPass_Click"/>
16:
17: <asp:ValidationSummary ID="ValidationSummary1"
18: runat="server" CssClass="error"/>
19:
20: <asp:Label ID="lblMessage" runat="server" Text=""/>
21: </fieldset>
22: </div>
23: </form>
Write following code in Click Event of Button to retrieve username and password associated with EmailID provided by user from database and send the information to this email id.
C# CODE
01using System;02using System.Data.SqlClient;03using System.Configuration;04using System.Data;05using System.Net.Mail;06 07protected void btnPass_Click(object sender, EventArgs e)08 {09 //Create Connection String And SQL Statement10 string strConnection = ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString;11 string strSelect = "SELECT UserName,Password FROM Users WHERE Email = @Email";12 13 SqlConnection connection = new SqlConnection(strConnection);14 SqlCommand command = new SqlCommand();15 command.Connection = connection;16 command.CommandType = CommandType.Text;17 command.CommandText = strSelect;18 19 SqlParameter email = new SqlParameter("@Email", SqlDbType.VarChar, 50);20 email.Value = txtEmail.Text.Trim().ToString();21 command.Parameters.Add(email);22 23 //Create Dataset to store results and DataAdapter to fill Dataset 24 DataSet dsPwd = new DataSet();25 SqlDataAdapter dAdapter = new SqlDataAdapter(command);26 connection.Open();27 dAdapter.Fill(dsPwd);28 connection.Close();29 if(dsPwd.Tables[0].Rows.Count > 0 )30 {31 MailMessage loginInfo = new MailMessage();32 loginInfo.To.Add(txtEmail.Text.ToString());33 loginInfo.From = new MailAddress("YourID@gmail.com");34 loginInfo.Subject = "Forgot Password Information";35 36 loginInfo.Body = "Username: " + dsPwd.Tables[0].Rows[0]["UserName"] + "<br><br>Password: " + dsPwd.Tables[0].Rows[0]["Password"] + "<br><br>";37 loginInfo.IsBodyHtml = true;38 SmtpClient smtp = new SmtpClient();39 smtp.Host = "smtp.gmail.com"; 40 smtp.Port = 587;41 smtp.EnableSsl = true;42 smtp.Credentials = new System.Net.NetworkCredential("YourGmailID@gmail.com", "YourGmailPassword");43 smtp.Send(loginInfo);44 lblMessage.Text = "Password is sent to you email id,you can now <a href="Login.aspx">Login</a>";45 }46 else47 {48 lblMessage.Text = "Email Address Not Registered";49 }50 51 }VB.NET
01Imports System.Data.SqlClient02Imports System.Configuration03Imports System.Data04Imports System.Net.Mail05 06Protected Sub btnPass_Click(sender As Object, e As EventArgs)07 'Create Connection String And SQL Statement08 Dim strConnection As String = ConfigurationManager.ConnectionStrings("ConnectionString").ConnectionString09 Dim strSelect As String = "SELECT UserName,Password FROM Users WHERE Email = @Email"10 11 Dim connection As New SqlConnection(strConnection)12 Dim command As New SqlCommand()13 command.Connection = connection14 command.CommandType = CommandType.Text15 command.CommandText = strSelect16 17 Dim email As New SqlParameter("@Email", SqlDbType.VarChar, 50)18 email.Value = txtEmail.Text.Trim().ToString()19 command.Parameters.Add(email)20 21 'Create Dataset to store results and DataAdapter to fill Dataset 22 Dim dsPwd As New DataSet()23 Dim dAdapter As New SqlDataAdapter(command)24 connection.Open()25 dAdapter.Fill(dsPwd)26 connection.Close()27 If dsPwd.Tables(0).Rows.Count > 0 Then28 Dim loginInfo As New MailMessage()29 loginInfo.[To].Add(txtEmail.Text.ToString())30 loginInfo.From = New MailAddress("YourID@gmail.com")31 loginInfo.Subject = "Forgot Password Information"32 33 loginInfo.Body = "Username: " & Convert.ToString(dsPwd.Tables(0).Rows(0)("UserName")) & "<br><br>Password: " & Convert.ToString(dsPwd.Tables(0).Rows(0)("Password")) & "<br><br>"34 loginInfo.IsBodyHtml = True35 Dim smtp As New SmtpClient()36 smtp.Host = "smtp.gmail.com"37 smtp.Port = 58738 smtp.EnableSsl = True39 smtp.Credentials = New System.Net.NetworkCredential("YourGmailID@gmail.com", "YourGmailPassword")40 smtp.Send(loginInfo)41 lblMessage.Text = "Password is sent to you email id,you can now <a href="Login.aspx">Login</a>"42 Else43 lblMessage.Text = "Email Address Not Registered"44 End If45 46End Sub

0 comments:
Post a Comment