禁止重复登录问题

wwwdps1 2005-10-28 09:59:43
问一个很老但是很经典的问题,怎样禁止重复登录?我建了一个online表,但是不能解决非法退出问题?
...全文
209 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
ok
wwwdps1 2005-11-03
  • 打赏
  • 举报
回复
怎么发分阿?
wwwdps1 2005-11-02
  • 打赏
  • 举报
回复
我的问题解决了, net_lover(孟子E章) 说的非常正确,谢谢了!!
wwwdps1 2005-10-28
  • 打赏
  • 举报
回复
sessionid消失是在执行Session_OnEnd之前还是之后呢?
孟子E章 2005-10-28
  • 打赏
  • 举报
回复
例子

<Script LANGUAGE = VBScript RUNAT = Server>
Sub Session_OnStart
'清空LoginUser表
End Sub

Sub Session_OnStart
Response.Expires = -100
Server.ScriptTimeout = 10
Session.Timeout = 1
SET sqlConn = SERVER.CREATEOBJECT("ADODB.Connection")
sqlConn.Open "Provider=sqloledb;Data Source=.;Initial Catalog=phedu;User Id=sa;Password=;"

sSQL = "Insert LoginUser (SessionID) Values(" & Session.SessionID & ")"
SQLConn.Execute(sSQL)
sqlConn.Close
Set sqlConn = Nothing
End Sub

Sub Session_OnEnd
SET sqlConn = SERVER.CREATEOBJECT("ADODB.Connection")
sqlConn.Open "Provider=sqloledb;Data Source=.;Initial Catalog=phedu;User Id=sa;Password=;"

sSQL = "DELETE From LoginUser WHERE SessionID = " & Session.SessionID
SQLConn.Execute(sSQL)
sqlConn.Close
Set sqlConn = Nothing
End Sub
</Script>
孟子E章 2005-10-28
  • 打赏
  • 举报
回复
清空online表的代码放在什么地方呢??
global.asa里的Session_OnEnd
winnerzj 2005-10-28
  • 打赏
  • 举报
回复
你限定一个登陆次数,如果在该次数内没有登陆,则把账号和ip地址写到一个表中
wwwdps1 2005-10-28
  • 打赏
  • 举报
回复
sessionid每次都是随机生成的,不是固定的,所以不能通过sessionid来判断
skangming 2005-10-28
  • 打赏
  • 举报
回复
帮顶,想听详解……
wwwdps1 2005-10-28
  • 打赏
  • 举报
回复
非法退出后,session自动消失,sessionid也会消失,怎样查找所有用户的sessionid呢,代码应该放在什么地方?
wwwdps1 2005-10-28
  • 打赏
  • 举报
回复
非法退出时,怎样通过sessionid清空online表,清空online表的代码放在什么地方呢
孟子E章 2005-10-28
  • 打赏
  • 举报
回复
关键点:
online必须存SessionID
孟子E章 2005-10-28
  • 打赏
  • 举报
回复
非法退出需要在 Session超时时清空该用户的online中的记录
nosad 2005-10-28
  • 打赏
  • 举报
回复
学习了~~~~~

28,406

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧