我正在開發一個關於運動的Q/A論壇。我如何獲得登錄用戶的時區,以便根據該時區發佈他/她的查詢。目前我正在這樣做根據用戶的時區獲取時間 - PHP
Javascript
var current_date = new Date(); var clock=current_date.getTimezoneOffset()/60; gmt= -1 * clock;
$.post("receive.php",{gmt:gmt});
Receive.php
<?php // set timezone
if(isset($_POST['gmt']))
{
$_SESSION['timezone']=$_POST['gmt']*60*60;
}
?>
但它不適用於那些有Javascript的用戶。有更好的解決方案嗎?
讓用戶在其選項/設置/配置中設置時區。否則,請使用默認值(服務器,訪問者最熱門的區域)。 – MECU
同意@MECU:如果你不能從Javascript獲得它,那麼唯一可用的答案是讓用戶手動輸入它或爲他們選擇一個默認值(如果你用時區代碼向他們顯示時間,它會即使它不是當地的時區也是有意義的)。但誠實地說,你最後一次看到JavaScript禁用的瀏覽器?你是否依賴於其他功能的JS?如果是這樣,那麼這個問題無論如何都是無稽之談另外,如何確保用戶的時區設置正確? – SDC