📄 getpassword.cs
字号:
namespace PowerEasy.WebSite
{
using PowerEasy.Accessories;
using PowerEasy.Common;
using PowerEasy.Components;
using PowerEasy.Controls;
using PowerEasy.Enumerations;
using PowerEasy.Model.Accessories;
using PowerEasy.Model.UserManage;
using PowerEasy.UserManage;
using PowerEasy.Web.UI;
using System;
using System.Collections.Generic;
using System.Net.Mail;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
public class GetPassword : DynamicPage
{
protected Button BtnStep1;
protected Button BtnStep2;
protected Button BtnStep3;
protected CompareValidator CompareValTxtConfirmPassword;
protected HtmlForm form1;
protected Literal LitQuestion;
protected PlaceHolder PnlStep1;
protected PlaceHolder PnlStep2;
protected PlaceHolder PnlStep3;
protected RegularExpressionValidator RegularExpressionValidatorPassword;
protected TextBox TxtAnswer;
protected TextBox TxtConfirmPassword;
protected TextBox TxtPassword;
protected TextBox TxtUserName;
protected TextBox TxtValidateCode;
protected PowerEasy.Controls.RequiredFieldValidator ValrTxtUserName;
protected PowerEasy.Controls.RequiredFieldValidator ValrValidateCode;
protected ValidateCode VcodeLogin;
protected void BtnStep1_Click(object sender, EventArgs e)
{
this.PnlStep1.Visible = false;
UserInfo usersByUserName = Users.GetUsersByUserName(this.TxtUserName.Text);
if (!usersByUserName.IsNull)
{
this.LitQuestion.Text = usersByUserName.Question;
this.PnlStep2.Visible = true;
if (SiteConfig.UserConfig.UserGetPasswordType == 0)
{
this.BtnStep2.Text = "下一步";
}
}
else
{
DynamicPage.WriteErrMsg("对不起,不存在该用户。");
}
}
protected void BtnStep2_Click(object sender, EventArgs e)
{
this.PnlStep1.Visible = false;
this.PnlStep2.Visible = false;
if (this.TxtValidateCode.Text == this.VcodeLogin.ValidateCodeValue)
{
UserInfo usersByUserName = Users.GetUsersByUserName(this.TxtUserName.Text);
if (!usersByUserName.IsNull)
{
string str = StringHelper.MD5(this.TxtAnswer.Text);
if (StringHelper.ValidateMD5(usersByUserName.Answer, str))
{
if (SiteConfig.UserConfig.UserGetPasswordType != 0)
{
string input = DataSecurity.MakeRandomString("abcdefghijklmnopqrstuvwxyz0123456789_*", 10);
usersByUserName.UserPassword = StringHelper.MD5(input);
MailInfo mailInfo = new MailInfo();
mailInfo.FromName = SiteConfig.SiteInfo.WebmasterEmail;
List<MailAddress> list = new List<MailAddress>();
list.Add(new MailAddress(usersByUserName.Email));
mailInfo.MailToAddressList = list;
mailInfo.MailBody = "你在" + SiteConfig.SiteInfo.SiteName + "网站的用户新密码为" + input + ",请及时到" + SiteConfig.SiteInfo.SiteUrl + "用户中心登录修改密码!";
mailInfo.Subject = "新密码已发送到你的邮箱";
if (SendMail.Send(mailInfo) == MailState.Ok)
{
if (Users.Update(usersByUserName))
{
DynamicPage.WriteSuccessMsg("新密码已发送到你的邮箱!请注意查收并及时修改密码! 如无法接收到,请与网站管理员联系!", "../default.aspx");
}
else
{
DynamicPage.WriteErrMsg("新密码已发送到你的邮箱!但网站系统无法修改旧密码,使用新密码可能无法登录! 请与网站管理员联系!", "../default.aspx");
}
}
else
{
DynamicPage.WriteErrMsg("新密码发送到你的邮箱时不成功,请与网站管理员联系!", "../default.aspx");
}
}
else
{
this.PnlStep3.Visible = true;
}
}
else
{
DynamicPage.WriteErrMsg("你回答的问题不对");
}
}
}
else
{
DynamicPage.WriteErrMsg("你输入的验证码不对");
}
}
protected void BtnStep3_Click(object sender, EventArgs e)
{
UserInfo usersByUserName = Users.GetUsersByUserName(this.TxtUserName.Text);
usersByUserName.UserPassword = StringHelper.MD5(this.TxtPassword.Text);
if (Users.Update(usersByUserName))
{
DynamicPage.WriteSuccessMsg("修改密码成功!", "default.aspx");
}
}
protected void Page_Load(object sender, EventArgs e)
{
if (!this.Page.IsPostBack)
{
this.PnlStep1.Visible = true;
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -