网站登录记忆跳转实现的一种方法_JSP技巧_黑客防线网安服务器维护基地--Powered by WWW.RONGSEN.COM.CN

网站登录记忆跳转实现的一种方法

作者:黑客防线网安JSP教程基地 来源:黑客防线网安JSP教程基地 浏览次数:0

本篇关键词:方法实现记忆登录
黑客防线网安网讯:  记忆登录跳转可以打打方便用户使用  getHeader("Referer");方式简单不过不能处理post的参数  本来都是用在struts,webwork里的,为了容易看明白改写成jsp方式的  ----------------...

  记忆登录跳转可以打打方便用户使用
  getHeader("Referer");方式简单不过不能处理post的参数
  本来都是用在struts,webwork里的为了容易看明白改写成jsp方式的

  -------------------------------------------------------------------------------------------------------------
  member.jsp   //session限制访问页

  <%
  String url = ""
  if(session.getAttribute("username")==null)
  {
           url = myRedirect.dealurl(request);//记录当前地址和请求参数dealurl将实际url处理了避免和要请求url有干扰,因为会有& 字符
           response.sendRedirect("weblogin.jsp?url="+url) ;//重定向到登录页面
  }
  %>
  -------------------------------------------------------------------------------------------
  weblogin.jsp

  <%
  String url = request.getParameter("url");
  String userid =request.getParameter("userid");
  String password =request.getParameter("password");
  if(userid!=null) //如果是登录提交执行下面代码
  {

   if(登录成功)
    {
     session.setAttribute("userid",userid);
     out.println("<script>alert('登录成功,谢谢光临');self.location.href='"+myRedirect.geturl(url)+"';</script>");//转向到首次请求的url,.geturl(url)是把转化过的地址转化回来变成真实url.
    }else{
     out.println("<script>alert('用户名或密码错误');history.back();</script>");
    }
  }else{//如果不是登录提交显示现面登录界面
  %>
  <table width="311" height="162" border="0" align="center" cellpadding="0" cellspacing="0">
    <tr>
       
      <td width="311" height="162" align="center"> 您还没有登录,请先登录<br>
          <table width="155" border="0" cellpadding="0" cellspacing="5" class="font12">
    <form  name="loginfrm" action="weblogin.jsp" method="post"  id="loginfrm" onSubmit="return checkfrm();">
            <tr>
              <td width="41" height="33" valign="bottom">帐&nbsp;号:</td>
              <td width="99" valign="bottom"><input name="userid" type="text" class="textstyle" id="userid" size="12" style="height:20"></td>
            </tr>
            <tr>
              <td>密&nbsp;码:</td>
              <td><input name="password" type="password" class="textstyle" id="password" size="12" style="height:20;width:94"></td>
            </tr>
            <tr align="center" valign="bottom">
              <td height="21" colspan="2"> <input type="submit" name="Submit" value="登录">
                &nbsp; <a href="reg.jsp" target="_blank">没有注册</a>&nbsp; </td>
            </tr>
            <tr align="center">
              <td colspan="2" class="font14"><strong><a href="#" onclick="MM_openBrWindow('requestpwd.jsp','pwd','width=300,height=200');return false;">找回密码</a></strong></td>
            </tr>
      <input name="url" type="hidden" value="<%=url%>">这里要有个hidden来保存一下,不然提交就没了
     
      </form>
          </table>

   
       
      </td>
    </tr>
  </table>
  <%
  }
  %>

  -------------------------------------------------------------------------------------------------------

  
  myRedirect.java

  package com.util;

  import javax.servlet.http.HttpServletRequest;
  import java.util.Enumeration;

  public class myRedirect    //对url的转换类
  {
   public static String dealurl(HttpServletRequest request)
   {
    String url = "";
    url = request.getRequestURL()+"?";
    url +=param(request);
    if(url.indexOf("&")>-1)
     url=url.replaceAll("&","@#@");//实际上就是把有&的字符转化成了@#@
    return url;
   }
   public static String geturl(String url)//这个是还原方法
   {
    if(url.indexOf("@#@")>-1)
     url=url.replaceAll("@#@","&");
    return url;    
   }
   public static String param(HttpServletRequest request)
   {
    String url = "";
    Enumeration param = request.getParameterNames();//得到所有参数名
    while(param.hasMoreElements())
    {
     String pname = param.nextElement().toString();
     url += pname+"="+request.getParameter(pname)+"&";
    }
    if(url.endsWith("&"))
    {
     url = url.substring(0,url.lastIndexOf("&"));
    }
    return url;
   }
  }
  这样登录浏览器就会自动转到用户刚刚请求的地址

    黑客防线网安服务器维护方案本篇连接:http://www.rongsen.com.cn/show-16364-1.html
网站维护教程更新时间:2012-04-07 00:20:28  【打印此页】  【关闭
我要申请本站N点 | 黑客防线官网 |  
专业服务器维护及网站维护手工安全搭建环境,网站安全加固服务。黑客防线网安服务器维护基地招商进行中!QQ:29769479

footer  footer  footer  footer