protected void Button3_Click(object sender, EventArgs e)
    {
        //更改密码        SqlConnection myconn = new SqlConnection(ConfigurationManager.AppSettings["conStr"]);        myconn.Open(); //打开数据库连接        string strPwd = System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(resetpassword.Text.Trim(), "md5");        string sqlstr = "update users set userpwd='" + strPwd + "' where username='" + username.Text + "'";        Response.Write(sqlstr);        Response.End();        SqlCommand mycmd = new SqlCommand(sqlstr, myconn);//创建数据库命令        try
        {            mycmd.ExecuteNonQuery();            Session["UserName"] = username.Text;            Response.Write("<script language=javascript>alert('密码更改成功!');location.href='Default.aspx'</script>");        }        finally
        {            //关闭操作            myconn.Close();        }    }
运行后,在IE上直接显示出:update users set userpwd='B59C67BF196A4758191E42F76670CEBA' where username='test',,哎,,不知道咋回事

解决方案 »

  1.   

    Response.Write(sqlstr); 
    这句就是输出,在IE上直接显示出:update users set userpwd='B59C67BF196A4758191E42F76670CEBA' where username='test'的原因。
    Response.End(); 你都end了还改啥?
      

  2.   

    response.end()就结束了,后面语句好像不能执行吧,上一句的作用是把你写的字串打印到ie里,也就是你看到的东西。把这两句都删除试试
      

  3.   

    那就是try里的语句没执行成功啊
      

  4.   

    Response.Write(sqlstr); 这句没关系,不用去掉。
    Response.End(); 去掉这句就可以了。