Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: Разные часовые пояса, последний визит пользователя

Сообщения:  [1-10]    [11-20]  [21-21] 

 
 автор: sim5   (07.07.2010 в 08:32)   письмо автору
 
   для: Лена   (07.07.2010 в 00:19)
 

Тогда да, запрос смещения, но если запросы на сайте не через индексный файл, то каждый url сайта (файл скрипта) должен предполагать получение смещения. Вот это и не удобно, если не хранить это значение на сервере.

  Ответить  
 
 автор: Лена   (07.07.2010 в 00:19)   письмо автору
 
   для: sim5   (06.07.2010 в 16:44)
 

Спросила, сказали все, что на сайте, выводить в локальном времени - и время загрузки фото, и время отправки сообщений и т.д.

  Ответить  
 
 автор: sim5   (06.07.2010 в 16:44)   письмо автору
 
   для: Лена   (06.07.2010 в 14:53)
 

Я то думал, что каждый клиент видит все на сайте этом в рамках своего локального времени. Если же надо отобразить только время последнего посещения как локальное время пользователя (хотя я и не понимаю зачем), то необходимости получать от клиента что либо нет. Нужно отдавать время сервера клиенту, а из него получать время клиента, например:
<?
$time_server 
strtotime('2010-07-06 19:45:46')*1000;
?>
<script>
var dt = new Date(<? echo $time_server?>); 
document.write(dt.getFullYear()+'-'+(dt.getMonth()+1)+'-'+dt.getDate()+
' '+dt.getHours()+':'+dt.getMinutes()+':'+dt.getSeconds());
</script>

И еще кое что о времени.

  Ответить  
 
 автор: Лена   (06.07.2010 в 14:57)   письмо автору
 
   для: Trianon   (06.07.2010 в 13:45)
 

Ок, учту.

  Ответить  
 
 автор: Лена   (06.07.2010 в 14:53)   письмо автору
 
   для: sim5   (06.07.2010 в 13:10)
 

>И эдак не так, и так не эдак, не угодишь на вас никак.

Нет, все нормально, спасибо, мне понравился вариант с сессией, тем более, у меня в сессию пишется некая информация, когда пользователь заходит в аккаунт.
Не переживайте, все правильно вы меня всегда понимаете :) за что еще раз спасибо.

>У вас что все время, которое отображается на сайте, это локальное время сервера, и только >единственное время "время последнего посещения", это локальное время пользователя?

Да, сейчас у меня так.

  Ответить  
 
 автор: Trianon   (06.07.2010 в 13:45)   письмо автору
 
   для: Лена   (06.07.2010 в 12:43)
 

>>но есть смещения и 3:30 и 9:30. То есть, совсем не обязательно получать время смещения от клиента деленное на 60 минут
>
>я делаю для немцев и эмигрантов. Маловероятно, что на сайт придет какой-то житель Мьянмы или Афганистана, где смещение по полчаса.
"Маловероятно" это термин, которым программист оперировать не должен.
Применительно к поведению внешней среды.

  Ответить  
 
 автор: sim5   (06.07.2010 в 13:10)   письмо автору
 
   для: Лена   (06.07.2010 в 12:43)
 

И эдак не так, и так не эдак, не угодишь на вас никак. Но, "как только к пользователю на страницу кто-то зайдет, в базу придется делать запрос, чтобы узнать часовой пояс.", в любом случае, если кто-то заходит, то делать надо запрос, формировать страницу...
Или я уже стал сомневаться, что понял вас верно. У вас что все время, которое отображается на сайте, это локальное время сервера, и только единственное время "время последнего посещения", это локальное время пользователя?

PS. У жителей Мьянмы, Урюпинска и Берлина, шансы попасть на ваш сайт одинаковы. )

  Ответить  
 
 автор: Лена   (06.07.2010 в 12:43)   письмо автору
 
   для: sim5   (06.07.2010 в 06:55)
 

>но есть смещения и 3:30 и 9:30. То есть, совсем не обязательно получать время смещения от клиента деленное на 60 минут

я делаю для немцев и эмигрантов. Маловероятно, что на сайт придет какой-то житель Мьянмы или Афганистана, где смещение по полчаса.


>На мой взгляд интересней другой момент - возможность устанавливать/изменять часовой пояс пользователю или получать разово, хранить и где хранить.

Если хранить в базе, получается тоже накладно - как только к пользователю на страницу кто-то зайдет, в базу придется делать запрос, чтобы узнать часовой пояс. cookies мне никогда не нравились и я их использую редко, потому как они могут быть отключены вообще, и что тогда увидит пользователь?

Остается тогда только тот ваш пример, что вы привели выше. Я его на хосте проверила, все нормально считает.

  Ответить  
 
 автор: Trianon   (06.07.2010 в 12:27)   письмо автору
 
   для: Лена   (06.07.2010 в 12:22)
 

так и выводите (форматируйте) время клиентскими (JS) средствами.

  Ответить  
 
 автор: Лена   (06.07.2010 в 12:22)   письмо автору
 
   для: Trianon   (06.07.2010 в 02:05)
 

>Я вот чего не понимай.
>А зачем вообще трогать эти самые смещения?
>Или Вы хотите вычислять местное клиентское время на сервере?

Как зачем трогать смещения? В базе лежит время. Время с сервера. Мне надо, имея время на сервере, вывести пользователю время с учетом смещения по часовому поясу, в котором находится пользователь. Смещение же вычисляется только на клиенте.

  Ответить  

Сообщения:  [1-10]    [11-20]  [21-21] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования