有一個我希望在用戶離開特定頁面時執行的功能。該功能將基本上改變我的數據庫中某一列內的所有數據。所以如果用戶離開這個頁面,我希望這個功能由系統執行。有沒有辦法檢測用戶是否已經離開了該頁面。如何檢測用戶是否以PHP離開頁面
謝謝!
有一個我希望在用戶離開特定頁面時執行的功能。該功能將基本上改變我的數據庫中某一列內的所有數據。所以如果用戶離開這個頁面,我希望這個功能由系統執行。有沒有辦法檢測用戶是否已經離開了該頁面。如何檢測用戶是否以PHP離開頁面
謝謝!
你不能這樣做使用PHP,因爲它是一種服務器端語言。 您將需要使用JavaScript。
100%的可靠性,不,這是不可能的。由於離開特定頁面是客戶端操作,因此您可以控制客戶端的操作。您可以通過Javascript註冊一個onbeforeunload
處理程序,並希望客戶端瀏覽器支持它。但是,對此的支持並不普遍。
你不能做到這一點在PHP,但你可以使用JavaScript函數onbeforeunload,這裏的example
<script type="text/javascript">
window.onbeforeunload = confirmExit;
function confirmExit()
{
return "You have attempted to leave this page. If you have made any changes to the fields without clicking the Save button, your changes will be lost. Are you sure you want to exit this page?";
}
</script>
由於服務器端PHP只運行在服務器腳本,然後將結果發送到瀏覽器你不能單獨使用php來做到這一點。您可以使用javascript,使用onunload事件向您的php腳本發送ajax請求,然後運行php腳本來響應該請求。
長話短說:沒有可靠的方法。有一些處理卸載的JavaScript事件,但不能保證。 – xbonez
http://stackoverflow.com/questions/1889404/jquery-ui-dialog-onbeforeunload –
[JavaScript,瀏覽器,窗口關閉 - 發送AJAX請求或在窗口關閉時運行腳本](http:// stackoverflow .COM /問題/ 6162188/JavaScript的瀏覽器窗口關閉,發送-AN-AJAX請求或 - 運行一個腳本上贏) –