我做了个考试系统,可是用户交卷后,点击IE窗口的后退居然还能返回答题页面,我应该如何控制啊,我初步设想是注销掉这个用户,可是我用的是session,而且在提交试卷时候已经谢了session["userid"]=null;了为什么还能后退,如何阻止这种情况发生啊。

解决方案 »

  1.   

    每个页面都验证session["userid"]了吗 ?
      

  2.   

    给session["userid"]赋一个数据库里不存在的值。
      

  3.   

    Session.RemoveAll();
    另外如果有cookie,把cookie也清除掉
     newCookie = ....
     TimeSpan ts = new TimeSpan(-1, 0, 0, 0);
     newCookie.Expires = DateTime.Now.Add(ts);
     Response.Cookies.Add(newCookie);
      

  4.   

    后退看的是浏览器缓存,你要做的是他返回后虽然能看到题目但是提交就会告知无法答题
    做法是在存储答案前判断session是否为空