2017-04-11 38 views
1

有一個網站上列出的事件列表。數據庫中事件的日期和時間以UTC表示。每當用戶訪問網站時,我們會在php會話中存儲他的時間偏移量,然後向他顯示該時間段內該事件的時間和日期。有一個支付網關來預訂活動,並且我正在嘗試在付款完成後立即發送電子郵件。有兩種方法可以做到這一點。在Ajax調用中執行的php函數是否可以訪問會話變量?

  1. 當用戶支付金額,如果支付成功,支付網關訪問我的webhook與數據,然後我更新數據庫。在收到支付數據後,我可以撥打我的電子郵件功能。但在電子郵件中,我想根據用戶時區顯示日期和時間。所以我想知道付款網關什麼時候打開我的webhook數據,它能夠訪問用戶訪問網站時設置的php會話變量。

  2. 另一種方式是支付後我發送用戶到另一個頁面,我檢查確認付款。一旦確認,我可以調用一個將電子郵件發送給用戶的ajax函數。在這裏我想知道,當我調用ajax函數時,應該將用戶時間偏移量作爲數據發送,或者在調用ajax函數時執行的php函數將訪問php會​​話。我的困惑是,當ajax函數運行並且php頁面被執行時,php頁面是否會作爲服務器中的守護程序腳本被執行。

TIA

+5

對title中問題的快速回答(我沒有閱讀過問題主體):AJAX只是一種向瀏覽器發送請求而不用重新加載頁面的機制。除了請求標頭中的幾個值之外,在服務器端,一切工作方式與常規HTTP請求的工作方式相同。 – axiac

+0

好的。因此,如果在用戶點擊瀏覽器運行ajax函數時設置了php會話變量,那麼ajax函數請求的頁面是否可以訪問已設置的php會話變量? – Gaurav

+0

試試看看它是否有效。 – axiac

回答

2

正確的答案是簡單的是。您的瀏覽器像其他任何請求一樣將cookie發送到網絡服務器。所以你的會話Cookie將被處理與頁面重新加載完全相同。

相關問題