Как сделать так, чтобы все пользователи на сайте использовали общий часовой пояс, используя php или javascript? - PullRequest
2 голосов
/ 20 июля 2011

Я использую этот замечательный jQuery timepicker http://trentrichardson.com/examples/timepicker/

Это дает строку что-то вроде 07/20/2011 01:13 am

У меня есть такая ситуация, когда пользователи на сайте могут планировать «события», и они используют это, чтобы выбрать событие. Но я понимаю, что это может вызвать путаницу со всеми разными часовыми поясами, из которых люди будут отправлять.

Так что я подумал, что мог бы использовать php, чтобы каким-то образом получить часовой пояс и настроить способ просмотра дат зрителем в соответствии с их часовым поясом. Но это кажется довольно сложной задачей и было интересно, есть ли более простой способ?

Кроме того, даже с идеей php я попробовал echo date_default_timezone_get(); в качестве теста, чтобы увидеть, получил ли он мой часовой пояс, но он говорит, что я нахожусь в часовом поясе Лос-Анджелеса, а не в часовом поясе Балтимора / DC.

Я предполагаю, что он получает часовой пояс моего сервера, так как php находится на стороне сервера.

Так что, в принципе, как лучше всего использовать мой скрипт выбора времени jquery, чтобы все пользователи могли просматривать дату / время с учетом часовых поясов? Любая помощь будет принята с благодарностью.

Ответы [ 3 ]

2 голосов
/ 20 июля 2011

когда вы получаете дату и время от пользователя, сохраняете часовой пояс по умолчанию (например, GMT 0), вам нужно знать часовой пояс пользователя.Когда вы получаете дату и время из БД, добавьте в нее часовой пояс пользователя.

Вы правы, часовой пояс по умолчанию - это сервер.

получите часовой пояс пользователя , который вы можете сохранитьэто в cookie

1 голос
/ 20 июля 2011

Непосредственно предоставьте UTC время (например, «Ср, 20 июля 2011 г. 06:10:38 GMT») пользователям и используйте JS для преобразования его в местное время.

var localTime = new Date("Wed, 20 Jul 2011 06:10:38 GMT");
alert(localTime); // shows local time like: "Wed Jul 20 2011 14:10:38 GMT+0800 (CST)"
1 голос
/ 20 июля 2011

Термин UTC Time, Всемирное координированное время. Погуглите, а вы тем временем найдете много:

http://www.w3schools.com/jsref/jsref_getutcdate.asp

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...