Это более сложно, но я должен был обратиться к этому сценарию прежде, потому что машина и настройки профиля пользователя иногда не соответствуют предпочтениям Вашего посетителя. Например, британский посетитель, получающий доступ к Вашему сайту временно с австралийского сервера.
Использование сервис геолокации (например, MaxMind.com), как предложено @balabaster, для получения зоны, соответствующей их IP (Глобальный. Session_Start является лучшим). Это - хорошее соответствие для локального ISPs, но не настолько хорошее для AOL. Сохраните смещение от этого в сеансовых куки.
Или использование JavaScript для получения часового пояса как части представления/перенаправления формы, когда пользователь вводит сайт. Это - смещение тока браузера, но не обязательно предпочтительная зона посетителя. Использование это значение как значение по умолчанию; хранилище в других сеансовых куки.
<script type="text/javascript" language="JavaScript">
var offset = new Date();
document.write('<input type="hidden" id="clientTzOffset" name="clientTzOffset" value="' + offset.getTimezoneOffset() + '"/>');
</script>
Позволяют посетителю обновлять зону через персистентный cookie (для анонимных пользователей) и поле в их персональной странице (если аутентифицируется).
персистентное значение № 3 от переопределений значения сессии. Можно также сохранить тот же персистентный cookie для аутентифицируемых пользователей для отображения времен, прежде чем они войдут в систему.
В любом из событий до Страницы Разгружаются... Запрос. ServerVariables. Если Вы хотите их физический часовой пояс тогда, Вы проверяете их IP-адрес и используете IP для инструмента преобразования Геолокации.
я не уверен, существует ли иначе, можно сделать это, поэтому при требовании часового пояса, их компьютер настроен для, это должно было бы ожидать загрузки страницы для JavaScript...