kedar1997
汤俊萱
2019-04-01 17:45

用户名密码登录,数据存在数据库中的user表中,为何我的网页只能按其中的一条登录。

  • c#
  • asp.net
  • sql
  • visual studio

问题简单的来说就是他只认其中的某一条数据,其他的都会显示用户名密码错误

protected void Button1_Click(object sender, EventArgs e)
    {
        DataSetTableAdapters.UserTableAdapter ada = new DataSetTableAdapters.UserTableAdapter();
        DataSet.UserDataTable table1 = new DataSet.UserDataTable();
        ada.Fill(table1);
        //查询表数据
        for (int i = 0; i < table1.Rows.Count; i++)
        {
            if (TextBox1.Text == table1.Rows[i]["UserID"].ToString() && TextBox2.Text == table1.Rows[i]["passWord"].ToString())
            {
                string a = TextBox1.Text;
                Server.Transfer("Menu.aspx?name=" + a);
                //跳转到Menu页面

            }
            else
            {
                Label3.Text = "用户名或密码错误!";
                Label3.ForeColor = System.Drawing.Color.Red;
                TextBox1.Text = " ";
            }
        }   
    }

这个是登录界面到数据库内寻找用户名密码是否匹配的代码,dataset里有User的表和adapter。
我现在的问题是我即使里面有两条数据,他好像也只能按照一条进行登录。我试验了一下分为三种情况:
1.如果我里面是123,123一条数据,是可以用123,123登陆的。
2.如果我里面是234,234一条数据,是可以用234,234登陆的。
3.但里面如果是123,123;234,234两条数据,我就只能用123,123登录,用234,234登录会显示用户名或密码错误。

我一共搞过3组数据,123,234,abc,发现123>234>abc,也就是如果前面存在的话,后面的就无法登录,但是单独的都可以。而且与存放在数据库的上下顺序无关
错误很诡异..我也是实在没有办法了
图片说明图片说明
感谢各位!

  • 点赞
  • 回答
  • 收藏
  • 复制链接分享

1条回答