有这样一段JSP连接SQL的代码问题:
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {response.setContentType("text/html");String name=request.getParameter("txtName");
String pass=request.getParameter("txtPass");
Condb objcon=new Condb();
objcon.IsCondb(name,pass);if(objcon.IsCondb(name,pass))
{response.sendRedirect("../one.jsp");正确的页面
}
else
{response.sendRedirect("../two.jsp");//错误页面
}
}}前提连接数据库和输入的用户名、密码一切正常但为什么不执行if语句就直接执行else语句呢?该怎样解决?

解决方案 »

  1.   

    objcon.IsCondb(name,pass)函数得返回值是true还是false?
      

  2.   

    objcon.IsCondb(name,pass)返回一个int或string值,定义个变量来接收
    例:int i=objcon.IsCondb(name,pass)
    判断一下i的值,输入都正确返回1,密码不正确返回2,用户名不正确返回3
    根据返回值做各种处理就可以了
    或者objcon.IsCondb(name,pass)直接返回true or false,
    if(objcon.IsCondb(name,pass))
    {response.sendRedirect("../one.jsp");正确的页面   //true执行
    }
    else
    {response.sendRedirect("../two.jsp");//错误页面   //false执行
    }提醒一点:不要用response.sendRedirect来跳转,最好用请求调度来做
    response.sendRedirect是在客户端执行的,而请求调度直接在服务端
    来做,这样好多了!