Как поправить now и end что бы оставшееся время считалось правильно?

Нашел готовый скрипт js таймера и пытаюсь переделать его что бы время бралось с сервера, а не у клиента. Очень непонятный формат даты изначально использовался, поэтому и end и php перевел на UNIX формат, но разница между ними считается неверно, подскажите пожалуйста как это исправить?
<!DOCTYPE html>
<html>
<head>
    <meta charset=utf-8 />
    <title>Новый домен</title>
    <link rel="stylesheet" href="styles.css" class="css">

<?php 
$now = date('U');
$end = mktime(24, 0, 0, 12, 31, 2016);
?>

    <script>
    CountDownTimer('12/25/2015 12:00 PM', 'countdown'); //Month.Day

    function CountDownTimer(dt, id){
        var end = "<? echo $end ?>";
        var _second = 1000;
        var _minute = _second * 60;
        var _hour = _minute * 60;
        var _day = _hour * 24;
        var timer;

        function showRemaining() {
            var now = "<? echo $now ?>"
            console.log(end);
            console.log(now);
            var distance = end - now;
            if (distance < 0) {

                clearInterval(timer);
                document.getElementById(id).innerHTML = 'EXPIRED!';

                return;
            }
            var days = Math.floor(distance / _day);
            var hours = Math.floor((distance % _day) / _hour);
            var minutes = Math.floor((distance % _hour) / _minute);
            var seconds = Math.floor((distance % _minute) / _second);

            document.getElementById(id).innerHTML = days + 'days ';
            document.getElementById(id).innerHTML += hours + 'hrs ';
            document.getElementById(id).innerHTML += minutes + 'mins ';
            document.getElementById(id).innerHTML += seconds + 'secs';
        }

        timer = setInterval(showRemaining, 1000);
    }
    </script>

</head>
<body>

    <center>
      <div id="countdown"></div>
      <span id="span">remain</span>
    </center>

</body>
</html>


Изначально скрипты выглядел так
<!DOCTYPE html>
<html>
<head>
    <meta charset=utf-8 />
    <title>Новый домен</title>
    <link rel="stylesheet" href="styles.css" class="css">

    <center>
      <div id="countdown"></div>
      <span id="span">remain</span>
    </center>

    <script>
CountDownTimer('12/25/2015 12:00 PM', 'countdown'); //Month.Day

function CountDownTimer(dt, id)
    {
        var end = new Date(dt);
        var _second = 1000;
        var _minute = _second * 60;
        var _hour = _minute * 60;
        var _day = _hour * 24;
        var timer;

        function showRemaining() {
            var now = new Date();
            var distance = end - now;
            if (distance < 0) {

                clearInterval(timer);
                document.getElementById(id).innerHTML = 'EXPIRED!';

                return;
            }
            var days = Math.floor(distance / _day);
            var hours = Math.floor((distance % _day) / _hour);
            var minutes = Math.floor((distance % _hour) / _minute);
            var seconds = Math.floor((distance % _minute) / _second);

            document.getElementById(id).innerHTML = days + 'days ';
            document.getElementById(id).innerHTML += hours + 'hrs ';
            document.getElementById(id).innerHTML += minutes + 'mins ';
            document.getElementById(id).innerHTML += seconds + 'secs';
        }

        timer = setInterval(showRemaining, 1000);
    }
    </script>




</head>
<body>



</body>
</html>


Или подскажите как в php дату привести к формату Mon Nov 16 2015 01:59:03 GMT+0300 (RTZ 2 (зима)) У меня получается все кроме GMT и (RTZ 2). И знает кто где искать информацию о значении строки CountDownTimer('12/25/2015 12:00 PM', 'countdown'); В скриптах я полный ноль, но задачу очень хочу решить, весь выходной потратил )
  • Вопрос задан
  • 141 просмотр
Решения вопроса 1
Immortal_pony
@Immortal_pony Куратор тега PHP
но разница между ними считается неверно, подскажите пожалуйста как это исправить?


Сделать секунду равной секунде.
var _second = 1;



Или подскажите как в php дату привести к формату Mon Nov 16 2015 01:59:03 GMT+0300

<?php 
date("D M j Y H:i:s TP");
?>

Подробнее - php.net/manual/ru/function.date.php
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы