📄 exit.asp
字号:
<%@ LANGUAGE="VBSCRIPT" CODEPAGE="936"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>再见</title>
</head>
<body>
<%
'检查是否是在线用户
if session("myname")<>"" then
'创建数据源连接对象
set newconn=server.CreateObject ("ADODB.Connection")
dbpath=server.mappath("chatroom.mdb")
newconn.open "driver={Microsoft Access Driver (*.mdb)};dbq="&dbpath
'从在线用户表中删除该用户
newsql1="delete from UserOnLine where OnLineUserID='" & session("myname") & "'"
'更新房间信息表
newsql2="Update RoomInfo set HowManyUsers=HowManyUsers-1 where RoomName='" & session("myroom") & "'"
'通过connection对象的execute方法执行SQL语句
newconn.Execute (newsql1)
newconn.Execute (newsql2)
'通知该房间中的所有聊天成员该用户离开了该房间
mysql="select OnLineUserID from UserOnLine where RoomName='" & session("myroom") & "'"
'通过connection对象的execute方法执行SQL语句并返回记录集
set newrecord=newconn.Execute (mysql)
'application的Lock方法用于锁定application对象,保证同一时刻只有一个用户在对Application对象操作,这样可以保证数据的一致性和完整性
Application.Lock
'通知该房间中的所有用户该用户已经离开
do while not newrecord.eof
application(newrecord(0))="<br><font color=purple>" & session("nickname") & "离开了!(请刷新)<font size=1 color=blue>(" & time() & ")</font><br><br>" & application(newrecord(0))
newrecord.movenext
loop
application(session("myname"))=""
'取消Lock方法的对Application对象的锁定,以便其他的用户能够访问
Application.UnLock
'关闭数据源连接对象
newconn.Close
set newconn=nothing
'session对象的Abandon方法用来消除用户的Session对象并释放其所占用的资源
session.Abandon
'重定向到index.asp页面
Response.Redirect "index.asp"
end if
%>
<body>
</body>
</html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -