聊天室關鍵技術[使用者斷線]處理

來源:互聯網
上載者:User
聊天室 在編聊天室時,處理使用者斷線是一個刺手的問題,特別是放到免費網站上,如果一味地靠global.asa,什麼時候觸發
session_onend,application_onend,都是一個不確定的數字,在設計時,合理地安排會帶來意想不到的好處。
那麼有什麼最簡便辦法處理使用者斷線呢?
筆者經過實驗,有了以下的方法:
聊天室用N個application("user" & N)來儲存使用者名稱,再用application("TimeBegin")來儲存每個使用者的登入時間,同
時,在使用者登入時用session("TimerBegin")儲存登入時間(timer),在發言區設定重新整理時間為N秒,每次重新整理將session
("TimeBegin")的時間更新,同時判斷timer - application("user"&session(userID)) 是否>N秒,如果是則說明該使用者沒
有自動重新整理,即意味著已經斷線,即可將該application("user"&N)設為空白值,再提示該使用者已退出即可。
部分代碼:
total = application("AllPeople")'聊天總人數
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
%>



相關文章

E-Commerce Solutions

Leverage the same tools powering the Alibaba Ecosystem

Learn more >

Apsara Conference 2019

The Rise of Data Intelligence, September 25th - 27th, Hangzhou, China

Learn more >

Alibaba Cloud Free Trial

Learn and experience the power of Alibaba Cloud with a free trial worth $300-1200 USD

Learn more >

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。