新手求教(登陆时出错)
我在做一个简单的注册登录界面,注册没问题。但是登录时我输了正确的用户名和密码,用户名检测没错(会提示存不存在)但是提示密码错误相关代码如下:
注册:
protected void Button2_Click(object sender, EventArgs e)
{
if (TextBox2.Text == TextBox3.Text)
{
string sqla = @"server=.;database=yezi;UID=sa;PWD="";//连接数据库的字串
SqlConnection conn = new SqlConnection(sqla);//通过数据库的字串连接数据库
SqlConnection conn1 = new SqlConnection(sqla);//通过数据库的字串连接数据库
conn.Open();//打开连接
string sqlinscmd = @"select * from yezi_users where username='" + TextBox1.Text + "'";//sql命令字串
SqlCommand sqlcmd = new SqlCommand(sqlinscmd, conn);//让sql命令字串通过conn连接去执行
SqlDataReader dr = sqlcmd.ExecuteReader();//把sql命令产生的行写入dr数组,一次一行
if (dr.Read())//dr.Read()执行读取
{
Response.Write("<script>alert('用户存在')</script>");//提示
}
else
{
conn.Close();//关闭数据库连接
conn.Open();
string sqlinscmd1 = @"insert into yezi_users values(" + TextBox1.Text + "," + TextBox2.Text + ",0)";//sql命令字串
SqlCommand sqlcmd1 = new SqlCommand(sqlinscmd1, conn);//让sql命令字串通过conn连接去执行
sqlcmd1.ExecuteNonQuery();//执行sql命令
conn.Close();//关闭数据库连接
Response.Write("<script>alert('用户添加成功');window.location('Default.aspx')</script>");//提示
}
}
else
{
Response.Write("<script>alert('两次密码不相同')</script>");//提示
}
}
登陆:
protected void Button1_Click(object sender, EventArgs e)
{
string sqla = @"server=.;database=yezi;UID=sa;PWD="";//连接数据库的字串
SqlConnection conn = new SqlConnection(sqla);//通过数据库的字串连接数据库
conn.Open();//打开连接
string sqlinscmd = @"select * from yezi_users where username='" + TextBox1.Text + "'";//sql命令字串
SqlCommand sqlcmd = new SqlCommand(sqlinscmd, conn);//让sql命令字串通过conn连接去执行
SqlDataReader dr = sqlcmd.ExecuteReader();//把sql命令产生的行写入dr数组,一次一行
if (dr.Read())//dr.Read()执行读取
{
if (dr["userpwd"].ToString() == TextBox1.Text)
{
Response.Write("<script>alert('登录成功');window.location='普通用户.aspx';</script>");//提示
}
else
{
Response.Write("<script>alert('密码错误')</script>");//提示
}
}
else
{
Response.Write("<script>alert('用户不存在')</script>");//提示
}
conn.Close();//关闭数据库连接
}
数据库里我的userpwd类型为char[50],我注册输入密码为"123",但是dr["userpwd"].ToString().Length得到的结果为50
请大神指导一下