ASP防止同时登陆的问题

2009-05-12 15:31:37来源:未知 阅读 ()

新老客户大回馈,云服务器低至5折

实现这个功能可有两种方式:

1。application

用application对象:如果做的是大型社区,可能要为每个登陆id生成一个appliaction,这样做虽然程序上设计会简单些但登陆用户过多及其耗费服务器资源,这里决不提倡,因为appliaction对象在用户登陆时生成很容易, 但是要做到真正的随着用户退出系统完全释放,到目前还没看到更好的方法~

以下为引用的内容:

<% 
.....取用户名username..... 
if  Application(username)<>""  then 
     response.write  "该用户已经登录" 
     response.end 
end  if 
Application(username)=username  ''存入该用户的用户名
%>

在global文件中加上session  onend事件,下线时Application("isuserlogin")=false 
此外还要检测是否吊线,有专门的办法,是server对象里的某项 

(参: http://community.csdn.net/Expert/FAQ/FAQ_Index.asp?id=815)

2。数据库+asp
做起来可能会复杂些,但是适合有大量登陆用户的系统。

首先为用户建立数据库-用access新建一个onlyTOL8.mdb

数据表1: users 存放用户注册资料
下设数据表:uID(自动编号) userName(字符型) userPass(字符型)

数据表2: onlyLogin 存放用户临时登陆信息
下设数据表: OLname(字符型) OLtime(日期型) OLip(字符型)

数据库建好后直接向users表中手动添加数据 userName表添加TOL8,userPass表里添加111,

下面来做用户登陆界面,复制下面代码存成onlyLogin.asp文件。

以下为引用的内容:

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>禁止同一账号不同地区同时登陆</title>
</head>
<body>
<form name="form1" method="post" action="loginPost.asp">
用户名:<input name="userName" type="text" id="userName" size="15" maxlength="5">
密码:<input name="userPass" type="password" id="userPass" size="15" maxlength="15">
<input type="submit" name="Submit" value="Login">
</form>
</body>
</html>

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:在ASP应用中如何限制同一表单被多次提交

下一篇:关于Asp.net ajax下的异常处理