zoukankan      html  css  js  c++  java
  • c#用户登陆方法数据库

    c#用户登陆方法数据库

            /// <summary>
            /// 用户登陆
            /// </summary>
            /// <param name="sender"></param>
            /// <param name="e"></param>
            private void btnLogin_Click(object sender, EventArgs e)
            {
                string userName = txtUserName.Text.Trim();
                string userPwd  = txtPasswd.Text.Trim();
    
                //  if ((txtUserName.Text != "") && (txtPasswd.Text != ""))
    
               if(!(string.IsNullOrEmpty(userName)) && !(string.IsNullOrEmpty(userPwd)))
                {
                    string SqlText = "SELECT * FROM UserInfo Where UserName=@UserName and nCount >= @nCount";
                    SqlParameter[] param = {
                            new SqlParameter("@UserName", SqlDbType.VarChar, 50) { Value = userName },
                            new SqlParameter("@nCount", SqlDbType.Int, 4) { Value = 5 },
                           };
    
                    int r = SqlHelper.ExecuteScalar(SqlText, param);
                    if (r > 0)
                    {
                        lbMsg.ForeColor = Color.Red;
                        lbMsg.Text = "对不起,您的帐号已锁定!";
                        return;
                    }
                }
    
                if (string.IsNullOrEmpty(userName) || string.IsNullOrEmpty(userPwd))
                {
                    lbMsg.Text = "用户名或密码不能为空!";                
                }
                else
                {
                    string SqlText = "SELECT *  FROM UserInfo Where UserName =@UserName And UserPwd=@UserPwd";
                    SqlParameter[] param = {
                            new SqlParameter("@UserName", SqlDbType.VarChar, 50) { Value = userName },
                            new SqlParameter("@userPwd", SqlDbType.VarChar, 50) { Value = DEncrypt.GetMd5Str  (userPwd,this.passwordKey) },
                           };
    
                    int r = SqlHelper.ExecuteScalar(SqlText, param);
                    if (r > 0)
                    {
                        //记录登陆成功时间;
                        string sqlText = "Update UserInfo SET lastLoginTime = GETDATE(),nCount=@nCount Where UserName =@UserName";
                        SqlParameter[] para = new SqlParameter[] {
                            new SqlParameter("@UserName",SqlDbType.VarChar,50){Value=userName},
                            new SqlParameter("@nCount",SqlDbType.Int,2){Value=0},
                        };
                        SqlHelper.ExecuteNonQuery(sqlText, para);
                        lbMsg.ForeColor = Color.Blue;
                        lbMsg.Text = "登陆成功!";
                        this.IsLogin = true;
                        this.DialogResult = DialogResult.OK;
                    }
                    else
                    {
                        nCount++;
                        ////记录登陆失败时间,错误次数;
                        string sqlText = "Update UserInfo SET LastErrorDateTime= GETDATE(),nCount=@nCount Where UserName =@UserName";
    
                        SqlParameter[] para = new SqlParameter[] {
                            new SqlParameter("@UserName",SqlDbType.VarChar,50){Value=userName},
                            new SqlParameter("@nCount",SqlDbType.Int,2){Value=nCount},
                        };
    
                        SqlHelper.ExecuteNonQuery(sqlText, para);
    
                        lbMsg.ForeColor = Color.Red;
                        lbMsg.Text = "用户名或密码不正确!";
                    }
                }
    
            }
    

      

  • 相关阅读:
    Python的collections之defaultdict的使用及其优势
    Python的collections之namedtuple的使用及其优势
    【转】Python 代码批量抓取免费高清图片!
    Python之Django之views中视图代码重复查询的优化
    【转】把sqlite3数据导入到MySQL中
    【转】项目搬迁,快捷导出环境依赖包到requirements.txt
    聊聊模板方法模式,装饰器模式以及AOP
    [算法]股票问题
    [数据]matplotlib总结
    [算法]谷歌笔试题:Beautiful Numbers
  • 原文地址:https://www.cnblogs.com/nymz/p/14047514.html
Copyright © 2011-2022 走看看