81,092
社区成员
发帖
与我相关
我的任务
分享
ResultSet rs=sm.executeQuery("select * from users where userName='"+u+"'"+"and passwd='"+p+"'");
//System.out.println("passwd");
//根据结果做判断
if(rs.next()){
response.sendRedirect("wel.jsp?user="+u);
}else{
//密码错误
System.out.println("xixi");
response.sendRedirect("login.jsp?errNo=1");
}
我把代码修改成两个一起判断是可以的,不知道这种思路跟之前的有没有差别,先这样用吧。String p=request.getParameter("passwd");
System.out.println(p);
//打印出结果为admin
if(rs.next()){
System.out.println(rs.getString(1));
//打印出结果为admin
if(rs.getString(1).equals(p)){
//一定合法
System.out.println("haha");
response.sendRedirect("wel.jsp?user="+u);
}else{
//密码错误
System.out.println("xixi");
response.sendRedirect("login.jsp?errNo=1");
}
}else{
//密码错误
System.out.println("xixi");
response.sendRedirect("login.jsp?errNo=2");
}
按理说if(rs.getString(1).equals(p))应该成立,tomcat应该输出haha才对,可是输出结果却是xixi。牛人帮忙看看,问题出在哪,感激! ResultSet rs=sm.executeQuery("select passwd from users where userName='admin'");
userName为什么用admin,你不应该用得到的用户名去查询嘛
ResultSet rs=sm.executeQuery("select passwd from users where userName='u'");
应该这样吧 ResultSet rs=sm.executeQuery("select passwd from users where userName='admin'");
你这里直接取userName='admin'了
上面的String u=request.getParameter("username");
这个是用来干嘛的?