簡體   English   中英

如何檢測用戶是否離開PHP頁面

[英]How to detect if a user leaves a page in PHP

如果用戶離開特定頁面,我想執行這個 function。 這個 function 基本上會更改我數據庫中特定列中的所有數據。 因此,如果用戶離開此頁面,我希望系統執行此 function。 有沒有辦法檢測用戶是否已經離開頁面。

謝謝!

100%的可靠性,不,這是不可能的。 由於離開特定頁面是客戶端操作,因此您無法控制客戶端執行的操作。 您可以通過Javascript注冊onbeforeunload處理程序,並希望客戶端瀏覽器支持它。 但同樣,對此的支持並不普遍。

你不能用PHP做到這一點,因為它是一種服務器端語言。 您需要使用JavaScript。

你不能在PHP中這樣做但你可以使用javascript函數onbeforeunload,這里是一個例子

<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腳本以響應該請求。

為了覆蓋用戶離開特定頁面以導航到同一網站內的另一個頁面的情況,您可以嘗試使用頁面ID實現此目的,將“page_to_be_left”的ID存儲在會話var中,並檢查當前頁面ID與存儲在會話var中的ID匹配。 如果沒有匹配,則可以觸發您的功能。

你需要使用 javascript function onbeforeunload

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM