jsp登陆验证问题请教? 你应该把response.sendRedirect("login.html"); 这句写道catch块中的吧。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 把sql语句中的where qxmc = 'admin'去掉试试 :) 你在response.sendRedirect("login.html");这句前加个else else语法错误。前面是while语句啊,if包括在while语句里。如果循环一次次判断成功的话,就重定向到manage.html,后面的代码就不执行了吧?都没成功的话,最后才重定向到login.html啊。 if(username.equals((String)rs.getString(2)) && password.equals((String)rs.getString(3)))换成这个试试 db.Sql_data db = new db.Sql_data();String sql = "select * from admin where username = '"+username+"' and password= '"+password+"';";java.sql.ResultSet rs = db.executeQuery(sql);try { if(rs.next()){ response.sendRedirect("/house/admin/admin_manage.html"); } else response.sendRedirect("/house/admin/htlogin.html");} catch (SQLException e) { // TODO 自动生成 catch 块 e.printStackTrace();}小菜改成上面那样判断是可以的。。但是这样还要对username,password严格过滤吧。如果是接收传来的参数和读取出来的数据库字段值来直接比较,这样就不需要对username,password进行太严格的过滤了吧?小菜的想法有错吗?大侠指点 String sql = "select * from admin where username = '"+username+"' and password= '"+password+"';";这一句.我着实的看不懂后面的两个分号.... String username = new String(request.getParameter("username").getBytes("ISO_8859_1"),"GBK");不要转String username=request.getParameter("username").trim(); response.sendRedirect("login.html");逻辑关系错误,你至少加个ELSE或直接把这句加到CATCH块中去 try { boolean flag = false; while(rs.next()){ if(username.equals(rs.getString(2).trim()) && password.equals(rs.getString(3).trim())) flag = true; }; if(flag==true) response.sendRedirect("/house/admin/admin_manage.html"); else response.sendRedirect("/house/admin/htlogin.html"); } catch (SQLException e) { // TODO 自动生成 catch 块 e.printStackTrace();}问题总算解决了。。感谢楼上所有的兄弟 Struts1.2繁体乱码问题? 安装插件时,遇到这一坨问题,求解决方案 for 循环里面可以用递归函数调用到for循环外面吗 为什么我的hibernate.hbm2ddl.auto设置为update还是没法自动创建表 网站跳出率?谁会统计? MLDN 视频的 JCheckBox使用小示例 关于登录界面的验证码问题~ 欢迎交流,讨论一下ldap的应用! 求救:java里面怎么访问硬件信息,比如获取硬盘,内存大小. 问个spring的简单问题 【高分急问】axis发送附件,soap中的resopnse应该是什么类型的?
换成这个试试
String sql = "select * from admin where username = '"+username+"' and password= '"+password+"';";
java.sql.ResultSet rs = db.executeQuery(sql);
try {
if(rs.next()){
response.sendRedirect("/house/admin/admin_manage.html");
}
else
response.sendRedirect("/house/admin/htlogin.html");
} catch (SQLException e) {
// TODO 自动生成 catch 块
e.printStackTrace();
}
小菜改成上面那样判断是可以的。。但是这样还要对username,password严格过滤吧。如果是接收传来的参数和读取出来的数据库字段值来直接比较,这样就不需要对username,password进行太严格的过滤了吧?小菜的想法有错吗?大侠指点
不要转
String username=request.getParameter("username").trim();
逻辑关系错误,你至少加个ELSE或直接把这句加到CATCH块中去
boolean flag = false;
while(rs.next()){
if(username.equals(rs.getString(2).trim()) && password.equals(rs.getString(3).trim()))
flag = true;
};
if(flag==true)
response.sendRedirect("/house/admin/admin_manage.html");
else
response.sendRedirect("/house/admin/htlogin.html");
} catch (SQLException e) {
// TODO 自动生成 catch 块
e.printStackTrace();
}
问题总算解决了。。感谢楼上所有的兄弟