1.下载JMAIL插件 JMAIL4.3
2.在电脑上安装注册(注意:如果是放到服务器上需要在服务器上也注册安装)
主要代码:
protected void sendcode(object sender, EventArgs e)
{
//1.判断各个填写框是否为空
//2.判断是否为邮箱格式
//3.判断用户名是否存在数据库中,用户对应的邮箱账号是否填写正确
sendEmail(email.Text.Trim());
Response.Write("<script>alert('验证码已经发送到您注册的Email中')</script>");
}
public void sendEmail(string receivemail)
{
try
{
jmail.Message jmessage = new jmail.Message();
jmessage.Charset = "GB2312";
jmessage.ISOEncodeHeaders = false;
jmessage.From = "185753XXXX0@163.com";//填写发送的邮箱
jmessage.MailServerUserName = "1857534XXXX@163.com";//这里是发送邮箱的账号
jmessage.MailServerPassWord = "XXXXXX";//这里是发送邮箱的登陆密码
jmessage.FromName = "登陆密码找回";
jmessage.Subject = "密码找回";//邮箱主题
jmessage.AddRecipient(receivemail, "", "");//参数receivemail为收件的邮箱
jmessage.Body = CreateRandomCode(8);//CreateRandomCode(n)是自定义方法,随机生成一个n位数的验证码
//UPDATE语句,update用户名所在行的临时密码字段为jmessage.Body
jmessage.Send("smtp.163.com");//服务器邮箱地址,具体是什么可以百度
jmessage = null;
}
catch (Exception err)
{
Response.Write(err);
}
}
private string CreateRandomCode(int codecount)
{
// 数字和字符混合字符串
string allchar = "0,1,2,3,4,5,6,7,8,9,a,b,c,d,e,f,g,h,i,j,k,l,m,n";
//分割成数组
string[] allchararray = allchar.Split(',');
string randomcode = "";
//随机数实例
System.Random rand = new System.Random(unchecked((int)DateTime.Now.Ticks));
for (int i = 0; i < codecount; i++)
{
//获取一个随机数
int t = rand.Next(allchararray.Length);
//合成随机字符串
randomcode += allchararray[t];
}
return randomcode;
}