MD5登录+SQL用户名密码校验

2 篇文章 0 订阅
1 篇文章 0 订阅

这是一个winform程序,MD5计算,SQLserver表格数据查询,修改操作.

点击登录时,会将ID和转换成MD5值的密码 与数据库用户表中的信息作查询,由查询结果判断是否登录成功.

1.登录成功:可以使用修改密码button,(显示欢迎),点击修改密码,弹出新窗口,可以在新窗口中作修改密码操作(检验旧密码,确认新密码),存储在数据库中的密码依旧是MD5值

2.登录失败:由返回值确定是用户名不存在还是密码错误



登录

private void btnLogin_Click(object sender, EventArgs e)
        {
            string loginId = txtId.Text.Trim();
            string loginPwd = CommonHelp.GetMD5FromString(txtPwd.Text).ToLower();
        
            //校验用户名是否存在以及密码是否正确
            string sql = "select CC_AutoId,CC_UserName,CC_LoginPassword from T_Seats where cc_loginId=@uid";
            SqlParameter pms = new SqlParameter("@uid", loginId);

	    //用户名密码的校验标记
            bool userExist = false;
            bool pwdCorrect = false;
            using (SqlDataReader reader= SqlHelper.ExecuteReader(sql, CommandType.Text, pms))
            {
                if (reader.HasRows)
                {
                    userExist = true;
                    if (reader.Read())
                    {
                        //获取查询到的密码
                        string uPwd = reader.GetString(2);
                        //密码比较
                        if (uPwd==loginPwd)
                        {
                            pwdCorrect = true;
                            btn3.Enabled = true;
                            txtUName.Text = "欢迎: "+reader.GetString(1);
                        }                        
                    }  
                }                
            }
            if (!userExist)
            {
                MessageBox.Show("用户名不存在");
            }
            else if (!pwdCorrect)
            {
                MessageBox.Show("密码错误");
            }
            else
            {
                MessageBox.Show("登陆成功");
            }              
        }



关于数据库连接和SqlHelper中的方法,请查看

C# 对数据库操作的帮助类SQLHelper.cs

关于MD5值计算(文件与字符串),请查看

MD5计算器,字符串&文件校验


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值