Скрипт на JS . Как исправить... (часы и временная зона)

Тема в разделе "Другие языки", создана пользователем BaNru, 14 июн 2010.

Модераторы: Цукер
  1. BaNru

    BaNru Постоялец

    Регистр.:
    20 ноя 2008
    Сообщения:
    126
    Симпатии:
    52
    PHP:
    <span id="timenow"><?php echo (date("H:i:s")); ?></span>
    <script type="text/javascript">
    var serverdate = new Date("<?php echo (date("r")); ?>")
    function padlength(what) {
        var output = (what.toString().length == 1) ? "0" + what : what;
        return output;
    }
    function displaytime() {
        serverdate.setSeconds(serverdate.getSeconds() + 1);
        var timestring = padlength(serverdate.getHours()) + ":" + padlength(serverdate.getMinutes()) + ":" + padlength(serverdate.getSeconds());
        document.getElementById("timenow").innerHTML = timestring;
    }
    window.onload = function() {
        setInterval("displaytime()", 1000);
    }
    </script>
    Дата вводится правильно в код, но вот JS обрабатывает не правильно, он почему то меняет на временную зону, установленную у пользователя.

    Т.е. допустим, на компе MSK +3, и на сервере также,
    то в код выведется 02:00:00
    А если у пользователя на компе, например, Минск +2
    То в код выведется как положено 02:00:00, но скрипт переведет в 01:00:00

    Кто знает как это исправить?
     
  2. BaNru

    BaNru Постоялец

    Регистр.:
    20 ноя 2008
    Сообщения:
    126
    Симпатии:
    52
    Спустя хз сколько времени мне все таки подсказали решение проблемы. Ошибка как всегда элементарно простая.