用ASP完成號碼轉(zhuǎn)換程序案例
發(fā)表時間:2024-02-22 來源:明輝站整理相關(guān)軟件相關(guān)文章人氣:
[摘要]在編聊天室時,處理用戶斷線是一個刺手的問題,特別是放到免費網(wǎng)站上,如果一味地靠global.asa,什么時候觸發(fā)session_onend,application_onend,都是一個不確定的數(shù)字,在設(shè)計時,合理地安排會帶來意想不到的好處。那么有什么最簡便辦法處理用戶斷線呢?筆者經(jīng)過試驗,有了以下...
在編聊天室時,處理用戶斷線是一個刺手的問題,特別是放到免費網(wǎng)站上,如果一味地靠global.asa,什么時候觸發(fā)session_onend,application_onend,都是一個不確定的數(shù)字,在設(shè)計時,合理地安排會帶來意想不到的好處。
那么有什么最簡便辦法處理用戶斷線呢?
筆者經(jīng)過試驗,有了以下的方法:
聊天室用N個application("user" & N)來保存用戶名,再用application("TimeBegin")來保存每個用戶的登錄時間,同時,在用戶登錄時用session("TimerBegin")保存登錄時間(timer),在發(fā)言區(qū)設(shè)定刷新時間為N秒,每次刷新將session("TimeBegin")的時間更新,同時判斷timer - application("user"&session(userID)) 是否>N秒,如果是則說明該用戶沒有自動刷新,即意味著已經(jīng)斷線,即可將該application("user"&N)設(shè)為空值,再提示該用戶已退出即可。
部分代碼:
total = application("AllPeople")'聊天總?cè)藬?shù)
aryHuman = split(total,";")
for i = lbound(aryHuman) to ubound(aryHuman) - 1
if application("user" & i) = "online" then
if int(timer) - int(application("TimeBegin" & i)) > 120 then
application("user" & i) = ""
temp = aryHuman(i)
aryName = split(temp,",")
hrefname = aryName(0)
for j = lbound(aryHuman) to ubound(aryHuman) - 1
if application("user" & j) = "online" then
application("content" & j) = "<FONT color=#000000>【公告】"&hrefname&"</FONT>" &"<font color=#F08000
>"& "斷線..." & "</font><font color = #000000 class=p9>" & " <" & time() & "></font><br>" & application
("content" & j)
end if
next
end if
end if
next