关于UPDATE的SQL语句问题
我写了个update的sql语句来进行密码修改,但是感觉语句是没错的,但不知道为什么就是不能执行修改操作
语句:
String password = new String(request.getParameter( "password2 ").getBytes( "ISO8859_1 "), "GBK ");//取得表单文本域
if (request.getParameter( "password1 ").equals(password))
{
String username = (String)session.getAttribute( "login ");
String sql1= "UPDATE login SET passwd= ' "+password+ " ' WHERE username= ' "+username+ " ' ";
sqlbean.executeUpdate(sql1);
out.println( "密码修改成功 ");
}
else
{out.println( "您两次输入的密码不一致,请重新输入 ");}
------解决方案--------------------用out.println(password2);
out.println(password1);
out.close();
看下两个密码是不是一样不就知道了。
------解决方案--------------------request.getParameter( "password1 ").equals(password)
这个地方你返回false了
password 是你转码之后的了,比较的时候应该都是没有转码的,或者都是转码的
------解决方案--------------------String password = new String(request.getParameter( "password2 ").getBytes( "ISO8859_1 "), "GBK ");//取得表单文本域
if (request.getParameter( "password1 ").equals(password))
{
一个转码一个没有转码 这样会出问题的
------解决方案--------------------正解