我写了一个修改密码的页面,但是老是出不来
HttpSession session = request.getSession();
String userID = (String)session.getAttribute("C_user_ID");用户ID
boolean value = false;
String srcPWD = (String)request.getAttribute("old_passwd");就密码
String newPwd = (String)request.getAttribute("new_passwd");新密码
String pstrScript = "<script language='javascript'>alert('密码修改成功');</script>"; 
String pstrScript1 = "<script language='javascript'>alert('密码修改失败');</script>"; 
SJUsr dd = new SJUsr();
if (dd.seletUsrPass(userID,srcPWD)) 查询数据
{
value = dd.updateUsrPass(userID,newPwd);修改数据
if (value = true) 
{
System.out.print(pstrScript); 
response.sendRedirect("../root/updatePass.jsp");
} else 
{
System.out.print(pstrScript1);
response.sendRedirect("../root/updatePass.jsp");
}}
else{
response.sendRedirect("../root/CXroot.jsp");}

解决方案 »

  1.   

    下面是查询数据和修改数据的方法
    public boolean updateUsrPass(String userID, String newPwd) {
    ResultSet rs = null;
    DBscm conndb = new DBscm();
    boolean value = false;
    String sql = "UPDATE SYS_USR SET C_USR_PASSWD ='" + newPwd + "'  WHERE C_USR_ID = '"+ userID +"'";
    value = conndb.autoExec(sql);
    conndb.freeConnection();
    return value;   }

    public boolean seletUsrPass(String userID,String srcPWD) {
    ResultSet rs = null;
    DBscm conndb = new DBscm();
    int recordNumber = 0;
    boolean finallyValue = false;
    String sql = "SELECT C_USR_ID,C_USR_PASSWD FROM SYS_USR WHERE C_USR_ID = '" + userID + "' AND C_USR_PASSWD = '" + srcPWD + "'";
    rs = conndb.getSelectRs(sql);
      try {
    while(rs.next()){
    recordNumber ++ ;
    }
    } catch (SQLException e) { e.printStackTrace();
    } finally{
    conndb.freeConnection();
    }

    if(recordNumber == 1) {
    finallyValue = true;
    } else {
    finallyValue = false;
    }
    conndb.freeConnection();
    return finallyValue;
    }
      

  2.   

    // 兄弟,你这个地方好像不对吧!if (value = true) 
      

  3.   

    还是有问题,我改成了if(value==true) 也过不去