问题1,现在两个不同身份的用户在同一台电脑上登录,他们可以Session["courseId"]进行修改,.
但是当一个用户修改后,反应到另外一个用户上去了.如何应对这样的情况了.问题2,左边框架是显示用户信息的地方,有一个退出的HyperLink,如果退出的话,可以实现整个页面都返回到登录页面,但是这样的话我不知道如何清理掉Session,所以想改用Button,可能Session好处理一点 ,但是退出到登录界面后,右边没有变,就左边的页面变到了登录页面.请问如何处理,只要能清楚掉Session和整个页面都退回到登录页面就行了.问题3,关闭浏览器时如何在数据库对用户的状态进行修改呢?谁能说一下关闭浏览器到底会发生什么或者是原理.本人是新手,问题比较多,100有点少,不过没有办法,最多只能给这么多.只要回答其中的1-3个问题并且对我有用的话一定给分.谢谢大家!

解决方案 »

  1.   

    1,在同一个电脑登录之前,需要先注销登录,并关闭所有的浏览器窗口。主要是cookie造成的这个现象
    2,在Button的Click事件里写:
    Button_Click:...清空Session的代码,或者调用
    System.Web.Security.FormsAuthentication.SignOut();Response.Write("<script>window.top.location='Login.aspx';</script>");3,直接关闭浏览器将触发<body onbeforeunload="" onunload="">事件。但是关闭浏览器的情况很多,如断电等,所以这个不是很可靠,一般可以通过检查Session.OnEnd事件来处理。
      

  2.   

    对于HyperLink的退出也可以这样处理:
    在HyperLink上写一小段JS:javascript:top.location="exit.aspx"(HyperLink位于框架中)
    在exit.aspx中写清除SESSION的语句并同时转到login页面:Session.RemoveAll();response.redirect("login.htm");
      

  3.   

    第三个问题如孟子说的在Session.OnEnd中处理...
      

  4.   

    问题2,左边框架是显示用户信息的地方,有一个退出的HyperLink,如果退出的话,可以实现整个页面都返回到登录页面,但是这样的话我不知道如何清理掉Session,所以想改用Button,可能Session好处理一点 ,但是退出到登录界面后,右边没有变,就左边的页面变到了登录页面.请问如何处理,只要能清楚掉Session和整个页面都退回到登录页面就行了.你作个控件,清空Session,退到login页
      

  5.   

    up一下,
    private void ImageButton1_Click(object sender, System.Web.UI.ImageClickEventArgs e)
    {
    Response.Write("<script>window.top.location='login.aspx';</script>");

    }怎么这样不行呢,没有反应啊.