首页  韩国资源  酷站加油  我的展厅  设计名站  古典元素  推荐下载  设计欣赏  每周专访  招募精英  人才专区  网页教程  平面设计  编程开发  设计竞赛
当前位置:首页 > 编程开发 > ASP.net教程 > Asp.Net开发技巧 > 正文
ASP.NET防止用户多次登录的方法
来源:IT专家网 2008年07月24日 09:19 网友评论:0条 点击:

  然后在logout.aspx的Page_Load中写和Session_End相同的方法,同时在logout.aspx中加入事件:onload="javascript:window.close()"

  但是这样还是有问题,javascript在不同的浏览器中可能有不同的行为,还有就是当通过文件->关闭时没有判断到。

  2、使用xmlhttp方法(这种方法测试下来没有问题)

  在每个页面中加入如下的javascript(这些javascript也可以写在共通里,每个页面引入就可以了)

  以下是引用片段:

         var x=0;
  function myRefresh()

  {

  var httpRequest = new ActiveXObject("microsoft.xmlhttp");

  httpRequest.open("GET", "test.aspx", false);

  httpRequest.send(null);

  x++;

  if(x< 60) //60次,也就是Session真正的过期时间是30分钟

  {

  setTimeout("myRefresh()",30*1000); //30秒

  }

  }

  myRefresh();
 
  在web.config中设置

  以下是引用片段:

  < sessionState mode="InProc" timeout="1">< /sessionState>

  test.aspx页面就是一个空页面,只不过需要在Page_Load中加入:

  以下是引用片段:

  Response.Expires = -1;

  保证不使用缓存,每次都能调用到这个页面。

  原理就是:设置Session的过期时间是一分钟,然后在每个页面上定时每30秒连接一次测试页面,保持Session有效,总共连60次,也就是30分钟。如果30分钟后用户还没有操作,Session就会过期。当然,如果用户直接关闭浏览器,那么一分钟后Session也会过期。这样就可以满足要求了。

首页 上一页 [1] [2] 下一页 尾页
上一篇:ASP.NET2.0中文验证码的实现   下一篇:ASP.NET中备份SQL Server数据库的方法
收藏此页】【打印】【关闭
 相关文章  我要点评
·ASP.NET2.0中文验证码的实现
·ASP.NET中备份SQL Server数据库的方法
·ASP.NET页面间数据传递
·ASP.NET缓存的方法分析
·ASP.NET 2.0中连接字符串的设置
·ASP.NET程序安全的基础知识
·处理ASP.Net开发常见Datagrid错误
·关于Asp.net ajax下的异常处理

免责声明:本站刊载此文不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。对本文有任何异议,请联络:68design#163.com
转载要求:作者及来源信息必需保留。转载之图片、文件,链接请不要盗链到本站,且不准打上各自站点的水印。



关于我们 | 在线反馈 | 广告报价 | 友情链接 | 联系我们 | 免责声明 | 在线投稿 | 网站地图
Copyright © 2003-2007 68design.net, All Rights Reserve 【找网页设计师,当然上网页设计师联盟】