我將PHP用作服務器端語言,並將Flex用作前端。在我的應用程序中有不同級別的用戶。根據運營商的在線狀態,QC在線分配一些工作。我只想在他自動關閉瀏覽器時更新用戶的在線/離線狀態。 Flex調用PHP服務,但沒有得到任何迴應。 DB(MySQL)沒有得到更新。任何幫助表示讚賞。當用戶關閉瀏覽器時自動註銷用戶
回答
據我所知這是不可能的。您最好的選擇是在用戶登錄時將datetime
保存到數據庫中,然後運行AJAX腳本來更新數據庫中每分鐘的用戶時間。然後,您可以檢查用戶是否有超過一分鐘的datetime
以查看用戶是否已登錄。您可以調整此方法的「分辨率」,例如每5分鐘檢查一次。
嗨@cbh,請你詳細解釋一下,或者我可以得到這個問題的任何鏈接或樣本。 – 2011-04-26 09:41:46
@Naveen kumar Pavuturi - 你必須更清楚你的問題。我的回答是針對問題的標題。你對這個問題的描述似乎指出了Flex和PHP(或者PHP和DB)之間的通信問題。請通過編輯問題描述進一步解釋您遇到的問題......包括有問題的任何錯誤和代碼片段。 – RANGER 2011-04-26 17:59:11
如果您希望在瀏覽器關閉之前進行服務調用,我認爲您需要讓Javascript向flex/flash客戶端發送消息,然後讓flex發出服務調用以讓您的服務器知道客戶端/瀏覽器正在關閉。一旦服務調用(請求/發佈)成功,Flash客戶端將響應Javascript以繼續瀏覽器關閉。注意這裏是我不認爲你可以一直有從瀏覽器到瀏覽器的JavaScript塊。在閃光燈可以啓動服務呼叫之前,瀏覽器可能會關閉。祝你好運。
順便說一句,您可以使用ExternalInterface註冊一個回調監聽器,並使用回調監聽器中引用的javascript函數來獲取javascript信號。
謝謝大家。我對AJAX感到困惑,但終於完成了。我在關閉瀏覽器的同時調用一個函數。 <body onunload='Logout();'>
。這裏的功能
var xmlhttp = new XMLHttpRequest(); url = "http://*****.com/public/LogOutThruJS.php?UserID="+UserID+"&LogHistoryId="+LogHistoryId; function Logout() { xmlhttp.open("GET", url,false); xmlhttp.send(null); xmlhttp=null; delete xmlhttp;
我希望它的可讀性:)。
}
- 1. 當瀏覽器窗口關閉時自動註銷用戶 - salesforce
- 2. 如何在瀏覽器關閉時自動註銷用戶?
- 3. 如何在瀏覽器關閉時自動註銷用戶?
- 4. 當用戶關閉瀏覽器時,保存註銷時間
- 5. 瀏覽器關閉時自動註銷
- 6. 當瀏覽器關閉時註銷Magento
- 7. Magento - 當瀏覽器關閉時註銷
- 8. 在zend關閉瀏覽器時註銷用戶
- 9. 如何讓我的網站在關閉瀏覽器時自動註銷用戶?
- 10. 當用戶關閉標籤時註銷
- 11. 用戶關閉瀏覽器而不註銷
- 12. ASP.NET - 在瀏覽器選項卡上關閉用戶註銷
- 13. 銷燬或取消會話時,用戶關閉瀏覽器不點擊註銷
- 14. 如何跟蹤用戶直接關閉瀏覽器時的註銷活動
- 15. AngularJS在關閉瀏覽器窗口時自動註銷
- 16. 用戶應該關閉瀏覽器標籤後自動註銷不僅瀏覽器
- 17. 當瀏覽器關閉時Cookie自動銷燬
- 18. 當瀏覽器打開並關閉時自動登錄和註銷
- 19. 如何在用戶關閉標籤頁/瀏覽器時註銷grails?
- 20. 爲什麼SESSION_EXPIRE_AT_BROWSER_CLOSE = True在瀏覽器關閉時將用戶註銷?
- 21. 如何在用戶關閉瀏覽器而不註銷時終止會話
- 22. 當用戶關閉瀏覽器時,sessionlistner不起作用
- 23. 無效的會話,當瀏覽器關閉時不註銷
- 24. 在瀏覽器關閉註銷
- 25. 當用戶在外面點擊時自動關閉瀏覽器窗口
- 26. 如果瀏覽器關閉,自動註銷laravel
- 27. 自動註銷,如果瀏覽器被關閉
- 28. 在瀏覽器關閉自動註銷的Drupal 7
- 29. 一旦瀏覽器關閉,DNN自動註銷
- 30. 當用戶從Facebook註銷時自動註銷
它需要多久更新一次?每隔幾分鐘就夠了,還是需要活下去? – Mikecito 2011-04-26 06:29:33
嗨@Mikecito,當用戶登錄時,他的在線狀態變爲'1',直到他註銷。如果他直接關閉瀏覽器,我想在DB中將他的在線狀態設置爲'0'。我只想更新他的在線狀態。我沒有設置任何會話時間。 – 2011-04-26 06:34:53