//加密字符串
private String EncryptString(String pwd)
{
String sResult=""
//方法体略
return sResult
}
//验证用户
private bool CheckUser(String UserName,String Pwd)
{
String sql="select password from users where UserName=@UserName"
using(SqlDataAdapter da=new SqlDataAdapter(sql,new SqlConnection(sConnectionString)))
{
da.SelectCommand.Parameters.AddWithValue("@UserName",UserName)
DataTable dt=new DataTable()
da.Fill(dt)
if(dt!=null&&dt.Rows.Count>0)
{
//如果存放在数据库里面的密码是已经加密过的,则建议
String sInputPwd=this.EncryptString(Pwd)//用户输入的密码,加密后的结果,用于与数据库里面的密码做比较
String sPwd=dt.Rows[0]["password"].ToString()
if(sInputPwd.Equal(sPwd))
{
return true
}
return false
}
return false
}
}
//修改密码
private void AlterPwd(String UserName,String OPwd,String nPwd)
{
if(this.CheckUser(UserName,OPwd))//通过用户验证后,才可以修改密码
{
String sql="update users set password=@Password where UserName=@UserName"
SqlConnection cn=new SqlConnection(sConnectionString)
SqlCommand cmd=new SqlCommand(sql,cn)
cmd.Parameters.AddWithValue("@Password",nPwd)
cmd.Parameters.AddWithValue("@UserName",UserName)
if(cn.Status==ConnectionStatus.Opened)
{
cn.Open()
}
try{cmd.ExecuteNonQuery()}
catch//(Exception err)
{
}
finally{
if(cn.Status==ConnectionStatus.Closed)
{
cn.Close()
}
}
}
}
//说明
sConnectionString 数据库连接串,请自行处理
2.代码中的关键字,可能有些出入,因为是在记事本上面写的,请自行调整