希望哪位大哥帮我解答哈啊!在线等!谢谢了

解决方案 »

  1.   

    在跳到登陆页面时,需要记录当前页面的地址,通常将当前地址附在?后面
    比如:用户直接访问 page1.htm ,系统重定向到login.htm
    重定向地址为:"/login.htm?returnurl=page1.htm"
    这样在login页面就可以得到用户由那个页面跳转过来,当登陆成功后,获取retururl并再次跳转就行了
      

  2.   

    建立一个basepage.cs 比如using System;
    using System.Data;
    using System.Configuration;
    using System.Web;
    using System.Web.Security;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using System.Web.UI.WebControls.WebParts;
    using System.Web.UI.HtmlControls;
    public class BasePage : System.Web.UI.Page
    {
          public BasePage()
        { }
        protected override void OnInit(EventArgs e)
        {
            if (Session[&"CurrentUser&"] == null)
            {
                HttpContext.Current.Response.Write(&"<script language=javascript>top.window.location.replace('index.aspx');</script>&");
                HttpContext.Current.Response.End();
                return;
            }
            else
            {
              //...
            }
         
            //---
            base.OnInit(e);
        }    
    }所有 需要 判断 用户登录信息的页面都 继承至basepage
    public class popedom_usermgr : BasePage
    {
    //...
    }
    登录 页面 使用
    Session[&"CurrentUser&"] 来保存用户信息
      

  3.   

    不知道你用什么语言,我用C#的 page1.aspx下的pageload中
     if(Session["user"]==null){//如果用户未登陆,将重定向登陆页面
       Response.Redirect("login.aspx?rurl=page1.aspx");
     }
     login.aspx 下,登陆完成后,添加如下代码
     if(登陆成功)
     {
       Session["user"] = user;
       if(Request["rurl"]!=null){
          string url = Request["rurl"];
          Response.Redirect(url);
       }
       else
          Response.Redirect("默认页");
       
     }ps: asp.net中的form验证可以省写代码。
      

  4.   

    思路了解了,就是怎么获取用户浏览页的url 及page1.aspx的值啊?
      

  5.   

    比较传统的方法就是在每一个页面的page_load中都添加如下代码
    在每个页面里把rurl后的值改一下
    if(Session["user"]==null){//如果用户未登陆,将重定向登陆页面
    Response.Redirect("login.aspx?rurl=当前页.aspx");
    }
    工作量稍大,
    如果你用了母版页的话就好一点了,你只要在母版页的page_load下添加if(Session["user"]==null){//如果用户未登陆,将重定向登陆页面
    string url = Request.RawUrl;
    Response.Redirect("login.aspx?rurl=" + url);
    }登陆页面不变
      

  6.   


    Request.URL 可以获取完整的请求路径,包括主机名、端口等等
    Server对象 可以获取服务器相关信息
    具体参考msdn