用JMAIL实现邮箱密码找回

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;
    }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值