嫡女谋权天下全文阅读:c#字符串比较

来源:百度文库 编辑:高校问答 时间:2024/05/06 00:58:52
我在验证用户密码是否正确时,应如何判断这输入的密码与数据中密码是否相等?
SqlConnection Con=new SqlConnection(ConfigurationSettings.AppSettings["strConnection"]);
string sel="select * from [User] where User_Name='"+U_name.Text+"'";
SqlCommand selCommand=new SqlCommand(sel,Con);
selCommand.Connection.Open();
SqlDataReader selreader;

// 执行查询
selreader=selCommand.ExecuteReader();
// 不存在此用户
if(selreader.Read()==false)
{
Label1.Text="该用户名不存在!";
return;
}
else
{

selCommand.Connection.Close();
string password1=U_password.Text;

if (password==password1)
{
Session["User_Name"]=U_name.Text;
Label1.Text="登录成功";
}
else
{
Label1.Text=U_password.Text;
return;
}

}

我指出两点,对于文本框取的内容,要记得去掉空字符eg:TextBox1.text.Trim();
还有你上面的DataReader使用完之后没有关闭的话,会一直独占资源的,记得要关闭。对于SQL语句我觉得这样写比较好一点
"select count(*) from users where username="+"'"+txtusername.text.trim()+"'"+"and password="+"'"+txtpassword.text.trim()+"'";
就OK了,而且会比较安全

string sql = "select * form [users] where username = '"+txtUsername.Text+"' and passowrd="'"+txtPassword.Text+"'"

看看这个语句能不能得到记录这样就可以了

问题已经解决,小生多说无用!