上一篇:让我意外的IsNumeric()函数 >>
如何防止同一帐户重复登录系统
如何防止控制客户端使其用同一帐户重复登录系统.
解决思路:
维护一online表,查看有登陆,就不允许再次登陆,以sessionid作为唯一标识符号,也可以产生一个GUID发到COOKIE中,以区分不同的CLIENT,再佐以JS,可以达到更好的效果,比如离开后自动离线
解决代码:
public virtual void Application_Start(object sender, EventArgs e)
??{
???// reset the mailer indicator
???Application["MailerStatus"] = "All Mailings Complete";
???// initialize a datatable for users online
???DataTable objUserTable = new DataTable();
objUserTable.Columns.Add("SessionID",System.Type.GetType("System.Guid"));
objUserTable.Columns.Add("PeopleID",System.Type.GetType("System.Int32"));
objUserTable.Columns.Add("ShowDetail",System.Type.GetType("System.Boolean"));
???DataColumn[] pk = new DataColumn[1];
???pk[0] = objUserTable.Columns[0];
???objUserTable.PrimaryKey = pk;
???Application["UserTable"] = objUserTable;
??}
?
??///
??/// The Session_Start event adds user session information to
??/// Application["UserTable"].
??///
??public virtual void Session_Start(object sender, EventArgs e)
??{
???Application.Lock();
???//Application.Lock ();
?DataTable objUserTable = (DataTable)Application["UserTable"];
???DataRow objRow = objUserTable.NewRow();
???Guid objGuid = Guid.NewGuid();
???objRow[0] = objGuid;
???Session["PfSessionID"] = objRow[0];
???objRow[1] = 0;
???objRow[2] = false;
???objUserTable.Rows.Add(objRow);
???Application["UserTable"] = objUserTable;
???Application.UnLock();
??}
?
??///
?/// The Session_End event deletes user session information from
??/// Application["UserTable"].
??///
??public virtual void Session_End(object sender, EventArgs e)
??{
???Application.Lock();
??DataTable objUserTable = (DataTable)Application["UserTable"];
??objUserTable.Rows.Find((Guid)Session["PfSessionID"]).Delete();
???Application["UserTable"] = objUserTable;
???Application.UnLock();
??}
下一篇:关于view的触发器的例子 >>
相关文章:
- · 提高网站在Google中的排名 ——面向搜索引擎的网站设计
- · 可缓存的CMS(网站内容管理器)系统设计
- · 把Web Control导出为Excel或Word
- · 如何实现立体的DataGrid和具有Windows效果的图片按钮
- · 一点ASP问题、差错和个人心得
- · 通过实例来实现split的理解
- · Asp.Net结合JS在图层上显示记录信息
- · Asp.net中如何处理一个站点不同Web应用通用Session的问题
- · css样式表的优先级别演示
- · 整理一个树型问题的解决方法
- · asp.net环境下的cmd命令执行
- · 常用javascript
- · 后台遍历一个HTML页面
- · 关于html上脚本语言的一点小释疑
- · 给网站添加一个注册表 之 “类的实现”
- · 给网站添加一个注册表 之 “类的设计”
- · 一个简单的上传类
- · 计数器的另一用法:自动切换首页图片
- · 性能微调提示
- · ASP.net中上传文件的操作
- · 对asp和asp程序员的一些话。。。
- · 英文版的Visual Studio.Net 2003 快捷键!
- · 如何定时运行ASP文件(转载)
- · 开发wap网站,还是碰到不少问题
- · 关于在浏览器中执行*.exe文件的深入探讨(z)
- · 在ASP 中实现ASP.Net 的DataGrid 功能(转载)
- · 在Web项目开发中使用BasePage类的巧用(继承System.Web.UI.Page)
- · 演示索引指示器的用法(C#)
- · ASP.NET中的ViewState
- · 蛙蛙学习asp.net总结(之一)
- · ASP.net初体验
- · 在ASP中利用ADO显示Excel文件内容的函数
- · ASP.NET 验证控件安全隐患
- · WindowsDNA与.net
- · 微软的常用资源列表
- · 蛙蛙推荐:asp中的多条件组合查询实现
- · 使用模板实现ASP代码与页面分离
- · 蛙蛙推荐:类中的静态成员和非静态成员(C#版)
