CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Java >  Web 开发

关于登陆页面的验证和重新定向response.sendRedirect();问题

楼主liuxiawei1(vivi)2005-06-01 14:55:14 在 Java / Web 开发 提问

我现在的登陆页面(login.jsp),按这一本书上的写,但是它就是不行。我的意图是让用户在登陆时判断其在数据库中已定义好的级别:A、B、C。分别被重新定向到不同级别对应的页面。那么但是它每次还是只回到login.jsp,就不再动了,而不重新定向到正确页。为什么?书上的原文只有判断用户名密码是否正确然后执行后面的操作。我嫁了个级别验证。但即使不加级别验证,他也不能重新定向呀。为什么?  
   
  下面是代码:  
  <form   name="tmForm">  
      <input   type="Text"   name="tmText"   size="40">  
  </form>  
  <p>    
      <%  
    String   getmessage   =   (String) session.getAttribute("error");  
    if   (getmessage==null)   {getmessage="";}                        
    %>  
  <p><font   color="red"><%=getmessage%></font></p1></p>  
  <p   align="center"   class="style1"><font   size="+4"   face="华文行楷">考勤管理系统</font></p>  
  <form   name="login"   method="post"   action="login.jsp"   >  
      <p>    
      <div   align="center">    
          <table   width="47%"   height="232"   border=1   align="center"     >  
              <tr   >    
                  <td   height="44"   colspan="2">  
  <div   align="center"><font   color="#FFFFFF"   size="+2"   face="华文行楷">请你输入</font></div></td>  
              </tr>  
              <tr   >    
                  <td   width="27%"><div   align="center"><strong><font   color="#FFFFFF">用户名:</font></strong></div></td>  
                  <td   width="73%"><input   name="opName"   type="text"     size="20"   maxlength="20"></td>  
              </tr>  
              <tr>    
                  <td><div   align="center"><strong>   <font   color="#FFFFFF">密码:</font></strong></div></td>  
                  <td><input   name="opPassword"   type="password"     size="20"   maxlength="20"></td>  
              </tr>  
              <tr   >    
                  <td   colspan="2"><div   align="center">    
                          <input   type="submit"   name="Submit"   value="登陆">  
                      </div></td>  
              </tr>  
          </table>  
          <table>  
          </table>          
      </div>  
  </form>  
   
   
  <%    
   
    String   opName=request.getParameter("opName");  
              if   (opName==null)  
                    {opName="";  
    }  
    String   opPassword=request.getParameter("opPassword");  
              if   (opPassword==null)  
                    {opPassword="";  
    }  
    byte   a[]=opName.getBytes("ISO-8859-1");  
        opName=new   String(a);  
        Connection   con=null;  
        Statement   sql=null;  
        ResultSet   rs=null;  
                  try{Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();            
        }  
  catch(ClassNotFoundException   e){}  
   
  try{con=DriverManager.getConnection("jdbc:microsoft:sqlserver://VIVI:1433;DatabaseName=qingyangRoad","sa","");  
   sql=con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);  
  String   condition="SELECT   *   FROM   operater   WHERE   opName   =   "+"'"+opName+"'";  
  String   auth="SELECT   opAuthID   FROM   operater   WHERE   opName   =   "+"'"+opName+"'";  
  String   A="A";  
  String   B="B";  
  String   C="C";  
  rs=sql.executeQuery(condition);  
  rs=sql.executeQuery(auth);  
  while(rs.next())  
        {String   i=rs.getString("opName");  
          String   p=rs.getString("opPassword");  
  //String   a=rs.getString("opAuthID");  
  if(opName.equals(i)&&opPassword.equals(p)&&auth.equals("A"))  
  {//将帐号密码存入session对象,以备在输入界面中使用。  
  session.setAttribute("opName",opName);    
  session.setAttribute("opPassword",opPassword);  
  //为了防止客户浏览器限制Cookie的使用,需对连接进行重定向处理。  
        String   s1=response.encodeRedirectURL("a.jsp");  
         
        //连接到管理员页面。  
        response.sendRedirect(s1);  
      }  
  if(opName.equals(i)&&opPassword.equals(p)&&auth.equals("B"))  
    {//将帐号密码存入session对象,以备在输入界面中使用。  
        session.setAttribute("opName",opName);    
        session.setAttribute("opPassword",opPassword);  
  //为了防止客户浏览器限制Cookie的使用,需对连接进行重定向处理。  
        String   s1=response.encodeRedirectURL("b.jsp");  
         
        //连接到管理员页面。  
        response.sendRedirect(s1);  
      }  
  if(opName.equals(i)&&opPassword.equals(p)&&auth.equals("C"))  
  {//将帐号密码存入session对象,以备在输入界面中使用。  
    session.setAttribute("opName",opName);    
    session.setAttribute("opPassword",opPassword);  
  //为了防止客户浏览器限制Cookie的使用,需对连接进行重定向处理。  
        String   s1=response.encodeRedirectURL("c.jsp");  
         
        //连接到管理员页面。  
        response.sendRedirect(s1);  
      }  
          }  
          if(!(session.isNew()))  
      {out.print("<BR>您的帐号或密码不正确");  
      }  
  }      
  catch(SQLException   e1){}      
    %>  
   
  问题点数:0、回复次数:9Top

1 楼liuxiawei1(vivi)回复于 2005-06-01 15:05:57 得分 0

请问有没有人能拉我一把呀?Top

2 楼liuxiawei1(vivi)回复于 2005-06-01 15:38:16 得分 0

救命呀Top

3 楼life8love(非你不可)回复于 2005-06-01 15:46:59 得分 0

如果用户登陆成功,从用户属性中得到用户级别,根据级别打开不同页面。window.open();  
  Top

4 楼liwenchao()回复于 2005-06-01 16:03:32 得分 0

rs=sql.executeQuery(condition);  
  rs=sql.executeQuery(auth);  
  while(rs.next())  
        {  
          String   i=rs.getString("opName");  
          String   p=rs.getString("opPassword");  
          String   a=rs.getString("opAuthID");  
          .........  
  }  
  上面的第二个rs的赋值语句有问题,应该是本页面没有编译过去,你可以重新定义一个变量,比如:  
  ResultSet   rs2=sql.executeQuery(auth);  
  Top

5 楼dmy22271(阿呆)回复于 2005-06-01 16:54:19 得分 0

你验证时就好把他们放在session里Top

6 楼liuxiawei1(vivi)回复于 2005-06-01 18:26:35 得分 0

啊?Top

7 楼wddodo(wd)回复于 2005-06-01 18:53:22 得分 0

楼主应该打印一下你提交的用户名、密码以及从数据库中获取的记录,相信可以找到问题Top

8 楼XIHSHI(西红柿)回复于 2005-06-01 19:06:31 得分 0

应该验证一把,在session里放置个东西就可以了,hohoTop

9 楼liuxiawei1(vivi)回复于 2005-06-01 21:03:19 得分 0

怎么没人理了,是不是沉底了?顶一下Top

相关问题

  • 页面的权限验证
  • 验证时页面跳转问题
  • 页面验证中的棘手问题
  • 验证控件太霸道,能够动态指定页面的验证?
  • 如何一部分ASPX页面要验证,一部分不要验证
  • 如何跳过登录页面,直接用验证页面登录?
  • 当页面中有验证控件存在的时候,如何关闭页面。
  • 如何做一个用户验证的页面?
  • 如何安全验证页面,用COOKIES???100分!
  • 身份验证后页面重定向问题!

关键词

  • 页面
  • 用户
  • sql
  • 登陆
  • 级别
  • rs
  • executequery
  • 问题
  • getstring
  • 应该

得分解答快速导航

  • 帖主:liuxiawei1

相关链接

  • CSDN Java频道
  • Java类图书
  • Java类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo