我想創建一個網站,你將通過一個會話在PHP中保持登錄,只要你留在網站上,但如果你離開網站將被註銷。例如,當您從mysite.com/index.php移動到mysite.com/otherpage.php時,您將保持登錄狀態,但在移動到othersite.com時將會註銷。這可能嗎?結束會議時,剩下的網站
到目前爲止,我已經嘗試使用ajax和jquery結束會話,當頁面被留下時,但這也會在頁面刷新時結束會話。
$(window).unload(function(){
$.ajax({
type: 'POST',
url: 'logout.php',
async:false,
data: {key_leave:"289583002"}
});
});
你可以添加AJAX調用到一個jQuery的「點擊」處理程序僅適用於所有的外部鏈接在您的網站上(可能會添加一個css類「外部」)。當用戶點擊另一個網站時,他們將首先從您的網站註銷。 – Will
只要用戶在網頁上,就會添加一個定期點擊您的服務器的心跳,然後如果其中一個或兩個心跳錯過了,請假定他們已經離開您的網站並結束會話。在外部鏈接上執行此操作不會有效,因爲不是每個人都使用每個網站的單個選項卡。例如,我可能會在三個不同的標籤中一次打開您網站的三個不同區域。如果我離開其中一個,並且仍然在其他人身上,則自動註銷將會帶來不便。 –
通常,這是通過使用會話或cookie來設置持續時間來重置每個心跳,這樣,如果在設定的持續時間內沒有發生心跳,會話或cookie會丟失,從而導致用戶被註銷。 –