jsp里用equals方法判断,就是不等.
String username=request.getParameter("username").trim();String pwd=request.getParameter("pwd1").trim();
.........................................
.......
String sql="select username,password from reginf where username='"+username+"'";
ResultSet rs=stmt.executeQuery(sql);
while(rs.next()){
boolean boo=rs.getString("password").equals(pwd);
if(boo==true){
response.sendRedirect("HomePage.jsp");//转跳
}
}
我的数据库,用的是sql2000sp4
列名 类型 长度
username varchar 50
password varchar 50
这是部分代码,我就是比较从数据库里取出来的"password"与前一个页面接收的"pwd",就是不等.我把他们分别打印出来显示在页面上都是一样的,但是一做判断就是不等.我能想到的都想到了,弄了半天了,实在不行就得换个方法了.
在线等,等到今天00:00
[此贴子已经被作者于2007-3-30 22:19:11编辑过]
搜索更多相关主题的帖子:
equals jsp 判断
----------------解决方案--------------------------------------------------------
boolean boo=rs.getString("password").equals("pwd");
除非你的密码正好是“pwd”才返回true
把“”去调在试试
----------------解决方案--------------------------------------------------------
不对,不对,这个是我打错了,原来没有那个冒号.我的意思就是boolean boo=rs.getString("password").equals(pwd);我这就把帖子改过来.不过也谢谢楼主的提醒
[此贴子已经被作者于2007-3-30 21:59:53编辑过]
----------------解决方案--------------------------------------------------------
我记得好像rs.getString();一定要按顺序来的你没有rs.getString("username")就直接rs.getString("password")了
改成:
String sql="select password from reginf where username='"+username+"'";
或:
String sql="select * from reginf where username='"+username+"'";
ResultSet rs=stmt.executeQuery(sql);
while(rs.next()){
rs.getString("username");
boolean boo=rs.getString("password").equals(pwd);
if(boo!=true){
response.sendRedirect("HomePage.jsp");//转跳
}
}
再试试
----------------解决方案--------------------------------------------------------
把rs.getString("password")改成rs.getString(2)应该就可以了。
----------------解决方案--------------------------------------------------------
对不起,我那个帖子又有个地方错了打错,应该是if(boo==true),原帖已改正了.
我弄好了,但是我也不知道什么原因,我重起了下服务器就好使了.十分感谢cyxdy1119在这么晚给我无私的帮助.
----------------解决方案--------------------------------------------------------
我看5楼说的比较象
----------------解决方案--------------------------------------------------------