C# 登录代码 输入正确账户和密码却提示输入错误
“登录”按钮触发事件privatevoidbutton1_Click(objectsender,EventArgse){stringrole=cbRole.Text;if...
“登录”按钮触发事件
private void button1_Click(object sender, EventArgs e)
{
string role = cbRole.Text;
if (textBox1.Text == "")
{
MessageBox.Show("请输入用户名称");
}
else if (textBox2.Text == "")
{
MessageBox.Show("请输入用户密码");
}
else if (role == "")
{
MessageBox.Show("请选择用户角色");
}
else
{
myConnectionString = @"Server=(local)\SQL_2005;INTEGRATED SECURITY=TRUE;" +
"Database=平面设计";
SqlConnection thisConnection = new SqlConnection(myConnectionString);
string selectstr = "select 用户名称,用户密码 from 用户 ";
SqlCommand cmm= new SqlCommand(selectstr, thisConnection);
thisConnection.Open();
SqlDataReader myDataReader;
myDataReader = cmm.ExecuteReader();
bool b_accept = false;
while (myDataReader.Read())
{
if ((myDataReader.GetString(0).ToString()) == (textBox1.Text.ToString()))
{
if(( myDataReader.GetString(1).ToString()) == (textBox2.Text.ToString
()))
{
b_accept = true;
break;
}
}
}
if (b_accept == true)
{
this.Close();
MainForm f2 = new MainForm();
f2.Show();
}
else
{
MessageBox.Show("用户名或密码不正确,请重新输入!", "错误");
}
}
}
数据库:表——用户,有两列——用户名称,用户密码!!
有没有人帮忙看看!输入正确账户和密码却提示输入错误 展开
private void button1_Click(object sender, EventArgs e)
{
string role = cbRole.Text;
if (textBox1.Text == "")
{
MessageBox.Show("请输入用户名称");
}
else if (textBox2.Text == "")
{
MessageBox.Show("请输入用户密码");
}
else if (role == "")
{
MessageBox.Show("请选择用户角色");
}
else
{
myConnectionString = @"Server=(local)\SQL_2005;INTEGRATED SECURITY=TRUE;" +
"Database=平面设计";
SqlConnection thisConnection = new SqlConnection(myConnectionString);
string selectstr = "select 用户名称,用户密码 from 用户 ";
SqlCommand cmm= new SqlCommand(selectstr, thisConnection);
thisConnection.Open();
SqlDataReader myDataReader;
myDataReader = cmm.ExecuteReader();
bool b_accept = false;
while (myDataReader.Read())
{
if ((myDataReader.GetString(0).ToString()) == (textBox1.Text.ToString()))
{
if(( myDataReader.GetString(1).ToString()) == (textBox2.Text.ToString
()))
{
b_accept = true;
break;
}
}
}
if (b_accept == true)
{
this.Close();
MainForm f2 = new MainForm();
f2.Show();
}
else
{
MessageBox.Show("用户名或密码不正确,请重新输入!", "错误");
}
}
}
数据库:表——用户,有两列——用户名称,用户密码!!
有没有人帮忙看看!输入正确账户和密码却提示输入错误 展开
6个回答
展开全部
string selectstr = "select 用户名称,用户密码 from 用户 ";
改成:
string selectstr =string.format("select 用户名称,用户密码 from 用户 where 用户名称='{0}' and 用户密码='{1}'",textBox1.Text,textBox2.Text)
改成:
string selectstr =string.format("select 用户名称,用户密码 from 用户 where 用户名称='{0}' and 用户密码='{1}'",textBox1.Text,textBox2.Text)
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
现在一般都用js
做初步判断,用户名是否被注册用ajax。如果你想偷懒的话可以用微软提供的验证控件。
做初步判断,用户名是否被注册用ajax。如果你想偷懒的话可以用微软提供的验证控件。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
string selectstr = "select 用户名称,用户密码 from 用户 ";
改成
string selectstr = "select 用户名称,用户密码 from 用户 where 用户名称='"+textBox1.Text.ToString()+"' and 用户密码='"+textBox2.Text.ToString()+"'";
你这样直接select出来是整个表的内容.你只对比第一行.当然不一定是你的用户名密码啦.
改成
string selectstr = "select 用户名称,用户密码 from 用户 where 用户名称='"+textBox1.Text.ToString()+"' and 用户密码='"+textBox2.Text.ToString()+"'";
你这样直接select出来是整个表的内容.你只对比第一行.当然不一定是你的用户名密码啦.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
我想是因为空格的原因,即:你从数据库里读出的时候还含有空格,从数据库里读出以后在后面加上".trim()"将空格除去~! 应该就是因为这个
myDataReader.GetString(1).ToString().trim();
myDataReader.GetString(1).ToString().trim();
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
把全部用户查到程序里循环判断...最好别这么做
可以直接在数据库里判断掉.
select count(*) ct from 用户表where 用户名称='"+名+"' and 用户密码='"+密码+"'
最好封状成过程,另外,表设计时,表和列最好别用中文.
可以直接在数据库里判断掉.
select count(*) ct from 用户表where 用户名称='"+名+"' and 用户密码='"+密码+"'
最好封状成过程,另外,表设计时,表和列最好别用中文.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询