首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

急如何判断用户密码异常三次将其帐号禁用

2012-04-11 
急!!!怎么判断用户密码错误三次将其帐号禁用我想在一个用户输入密码错三次后将其帐号锁定,但是现在有个问

急!!!怎么判断用户密码错误三次将其帐号禁用
我想在一个用户输入密码错三次后将其帐号锁定,但是现在有个问题是:如果我用一个用户名A登陆时密码错误两次,第三次我用另外一个用户名B登陆,再错一次密码,则就把B帐号给锁定了。
static   int   i=0;
private   void   btnLogin_Click(object   sender,   System.EventArgs   e)
{
            S_User   user   =   new   S_User();
            string   strUserId   =   txtUserID.Text.Trim();
            string   strPassWord   =   txtPassWord.Text.Trim();
            string   sucess   =   user.Login(strUserId,strPassWord);
            switch(sucess)
            {
case   "1 ":
    Page.RegisterStartupScript( "ErrorMsg ", " <script   language= 'javascript '> alert( '用户名输入错误! '); </script> ");
  break;
case   "2 ":
        i++;
        if   (i   > =   3)
        {
              user.LockSysAccount(strUserId);
                                Page.RegisterStartupScript( "ErrorMsg ", " <script   language= 'javascript '> alert( '密码输入错误三次,该帐号被锁定,请联系管理员! '); </script> ");
              i   =   0;
          }
          else
          {
Page.RegisterStartupScript( "ErrorMsg ", " <script   language= 'javascript '> alert( '用户密码输入错误! '); </script> ");
            }

          break;
case   "3 ":
          Page.RegisterStartupScript( "ErrorMsg ", " <script   language= 'javascript '> alert( '该帐号不存在或帐号已被禁用,请联系管理员! '); </script> ");
          break;
case   "4 ":
Session[ "UserID "]   =   strUserId;
Response.Redirect( "Desktop.htm ");
break;
}

[解决办法]
加个sessionID做为参考,只要sessionID一样,就计数
[解决办法]
再用个变量存用户名不就得了,一旦输入用户名不等于保存用户名,计数器复位。
顺便提一下,禁用帐户最好不给提示,否则,不怀好意者会记录你系统上有哪些用户,以作它图……
[解决办法]
用户尝试登录的次数保存在session中就可以了

热点排行