http://csharpdotnetfreak.blogspot.com/2012/06/aspnet-forgot-password-email-page-code.html
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>
C# CODE
using System;
using System.Data.SqlClient;
using System.Configuration;
using System.Data;
using System.Net.Mail;
protected void btnPass_Click(object sender, EventArgs e)
{
//Create Connection String And SQL Statement
string strConnection = ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString;
string strSelect = "SELECT UserName,Password FROM Users WHERE Email = @Email";
SqlConnection connection = new SqlConnection(strConnection);
SqlCommand command = new SqlCommand();
command.Connection = connection;
command.CommandType = CommandType.Text;
command.CommandText = strSelect;
SqlParameter email = new SqlParameter("@Email", SqlDbType.VarChar, 50);
email.Value = txtEmail.Text.Trim().ToString();
command.Parameters.Add(email);
//Create Dataset to store results and DataAdapter to fill Dataset
DataSet dsPwd = new DataSet();
SqlDataAdapter dAdapter = new SqlDataAdapter(command);
connection.Open();
dAdapter.Fill(dsPwd);
connection.Close();
if(dsPwd.Tables[0].Rows.Count > 0 )
{
MailMessage loginInfo = new MailMessage();
loginInfo.To.Add(txtEmail.Text.ToString());
loginInfo.From = new MailAddress("YourID@gmail.com");
loginInfo.Subject = "Forgot Password Information";
loginInfo.Body = "Username: " + dsPwd.Tables[0].Rows[0]["UserName"] + "<br><br>Password: " + dsPwd.Tables[0].Rows[0]["Password"] + "<br><br>";
loginInfo.IsBodyHtml = true;
SmtpClient smtp = new SmtpClient();
smtp.Host = "smtp.gmail.com";
smtp.Port = 587;
smtp.EnableSsl = true;
smtp.Credentials = new System.Net.NetworkCredential("YourGmailID@gmail.com", "YourGmailPassword");
smtp.Send(loginInfo);
lblMessage.Text = "Password is sent to you email id,you can now <a href="Login.aspx">Login</a>";
}
else
{
lblMessage.Text = "Email Address Not Registered";
}
}
VB.NET
Imports System.Data.SqlClient
Imports System.Configuration
Imports System.Data
Imports System.Net.Mail
Protected Sub btnPass_Click(sender As Object, e As EventArgs)
'Create Connection String And SQL Statement
Dim strConnection As String = ConfigurationManager.ConnectionStrings("ConnectionString").ConnectionString
Dim strSelect As String = "SELECT UserName,Password FROM Users WHERE Email = @Email"
Dim connection As New SqlConnection(strConnection)
Dim command As New SqlCommand()
command.Connection = connection
command.CommandType = CommandType.Text
command.CommandText = strSelect
Dim email As New SqlParameter("@Email", SqlDbType.VarChar, 50)
email.Value = txtEmail.Text.Trim().ToString()
command.Parameters.Add(email)
'Create Dataset to store results and DataAdapter to fill Dataset
Dim dsPwd As New DataSet()
Dim dAdapter As New SqlDataAdapter(command)
connection.Open()
dAdapter.Fill(dsPwd)
connection.Close()
If dsPwd.Tables(0).Rows.Count > 0 Then
Dim loginInfo As New MailMessage()
loginInfo.[To].Add(txtEmail.Text.ToString())
loginInfo.From = New MailAddress("YourID@gmail.com")
loginInfo.Subject = "Forgot Password Information"
loginInfo.Body = "Username: " & Convert.ToString(dsPwd.Tables(0).Rows(0)("UserName")) & "<br><br>Password: " & Convert.ToString(dsPwd.Tables(0).Rows(0)("Password")) & "<br><br>"
loginInfo.IsBodyHtml = True
Dim smtp As New SmtpClient()
smtp.Host = "smtp.gmail.com"
smtp.Port = 587
smtp.EnableSsl = True
smtp.Credentials = New System.Net.NetworkCredential("YourGmailID@gmail.com", "YourGmailPassword")
smtp.Send(loginInfo)
lblMessage.Text = "Password is sent to you email id,you can now <a href="Login.aspx">Login</a>"
Else
lblMessage.Text = "Email Address Not Registered"
End If
End Sub
Download Source Code
03:56