簡體   English   中英

獲取用戶時間與服務器時間之間的時差?

[英]Getting the time difference between a user and server time?

我想擁有一個功能,用戶可以設置該功能,讓他希望每天的H:mm AM / PM每天發送一些每日報告。

然后,我必須確定在為用戶指定的時間時它將在服務器上的什么時間。 例如,如果用戶將5:00 PM設置為希望發送電子郵件的時間,並且將其當前的12:00 PM設置為服務器上的當前10:00 PM,則我想確定它將在幾點開始服務器在用戶的5:00 PM時。

如何使用PHP / Javascript實現此目的?

我正在考慮通過JavaScript生成當前用戶時間的MySQL TIME字符串(例如hh:mm:ss),並將其傳遞給服務器,服務器將在mysql查詢中使用此字符串並對它進行TimeDiff()? 還是有更好的方法?

注意:客戶端已指定必須使用用戶的時鍾時間,而不是當前時區。

在網址末尾的Ajax查詢中,我將執行以下操作:

var ts = Math.round((new Date()).getTime() / 1000);
var url= "http://mysite.com/?usertime="+ts;

然后在服務器端,您可以使用類似

$EstimatedTimeDifference = time()-$_GET['usertime'];

因此,現在您已經獲得了服務器與瀏覽器之間的時間差(以秒為單位)(大約忽略了腳本生成time()所花費的時間)。 從那里開始,這應該很容易。 將其四舍五入並除以3600,即可得出小時數差異等。

有足夠的信息來幫助您前進嗎?

暫無
暫無

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

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