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

2/22/2017来源:ASP.NET技巧人气:557

这是一个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计算器,字符串&文件校验