当前位置:编程学习 > asp >>

ASP防止多个用户同时登陆系统

答案:下午和DW8的兄弟们在群里针对这个问题讨论了很久~!我的思路就是:用户登陆时对application("pass")的值进行判断,如果application("pass")的值不为空,那么就提示已经有人登陆~否则登陆(说明是第一个登陆的用户)并给application("pass")赋一个值,然后加一个在线人数的判断,有在线人数时 application("pass")不等于空,没有在线人数时用application.contents.remove("pass")来清除application("pass")的值.
具体application.contents.remove的用户可以参考:http://www.kekecn.com/blog/article.asp?id=637

具体方法如下:

<%
..............................'有个online的表记录在线的人员,登陆时判断在线人数~!如果在线人数不为0则application("pass")="nopass",在线人数为0的话就对application进行一次清除
if application("pass")="nopass" then 
response.write "系统中已有用户登陆" 
response.end 
end if 
%>

随后的系统中就得对在线人数进行统计了,如果在线人数为0则用application.contents.remove("pass")来清除application("pass")的值.


========================================================


ASP程序中同一个用户不允许同时登陆两次

登陆页login.asp:

程序代码
<%
if request.Form.count>0 then 
session("username")=request("username")
application(session("username"))=session.SessionID
response.Redirect("index.asp")
end if
%>
<form method=post action="">
<input type="text" name="username"><input type="submit">
</form>



其他需要认证的页面index.asp:

程序代码
<%
if application(session("username"))=session.SessionID then
response.Write("已经登陆")
else
response.Write("没有登陆")
end if
%>

上一个:ASP动态生成JavaScript的表单验证
下一个:ASP禁止站外提交表单

CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,