”YZJ“ 是数据库名称,”zhuce“是表名,环境:VS 2010,SQL 2008
protected void Button1_Click(object sender, EventArgs e)
{
Boolean a;
a = false;
if (TextBox1.Text == string.Empty || TextBox2.Text == string.Empty)
{
Label3.Text = "请输入用户名和密码";
//输出报错原因,都为空
}
string str;
SqlConnection sql = new SqlConnection();
sql.ConnectionString = "Data Source=localhost;Initial Catalog=YZJ;Integrated Security=true";
sql.Open();
str = "select * from zhuce";
SqlCommand sqlcom = new SqlCommand(str, sql);
SqlDataReader dr = sqlcom.ExecuteReader();
if (dr.HasRows)
{
while (dr.Read())
{
if (TextBox1.Text.Equals(dr.GetString(1)))//这里看你用户名是在第几列,我这里是第二列所以索引用的是1
{
if (TextBox2.Text.Equals(dr.GetString(2)))//这里同理,看你匹配的密码实在第几列
{
a = true;
Server.Transfer("学生主页.aspx");
//用户名密码正确
}
else
{
a = true;
Label4.Text = "密码错误";
//输出报错原因,为密码错误
}
}
}
}
if (a == false)
{
Label3.Text = "用户名错误";
//输出报错原因,为用户名错误
}
}
Asp.net中实现登陆功能,但是总提示密码错误,求大神指点!
答案:2 悬赏:50 手机版
解决时间 2021-04-06 10:27
- 提问者网友:棒棒糖
- 2021-04-06 01:14
最佳答案
- 五星知识达人网友:西岸风
- 2021-04-06 02:49
1、首先确认你的密码有没有加密。
2、你是用Equals判断密码是否一致,建议你换成==。
Equals方法对于值类型和引用类型的定义不同,对于值类型,类型相同,并且数值相同(对于struct的每个成员都必须相同),则Equals返回true,否则返回false。
2、你是用Equals判断密码是否一致,建议你换成==。
Equals方法对于值类型和引用类型的定义不同,对于值类型,类型相同,并且数值相同(对于struct的每个成员都必须相同),则Equals返回true,否则返回false。
全部回答
- 1楼网友:天凉才是好个秋
- 2021-04-06 03:10
你说呢...
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯
正方形一边上任一点到这个正方形两条对角线的 |
阴历怎么看 ? |