Javascript обратный отсчет и дата PHP - PullRequest
1 голос
/ 28 ноября 2011

Вот JavaScript, который я использую для генерации обратного отсчета, моя проблема в том, что JavaScript использует дату с ПК пользователя, есть ли способ изменить скрипт, чтобы использовать что-то вроде:

<?php 
date_default_timezone_set('Ireland/Dublin');
$date = date('m/d/Y h:i:s A', time());?>

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

   <script type="text/javascript" language="JavaScript">//<![CDATA[


<?php
    echo 'StartCountDown("c' . $post->ID . '","' . $enddate . '")';

    ?>


  function StartCountDown(myDiv,myTargetDate)
  {
    var dthen   = new Date(myTargetDate);
    var dnow    = new Date();
    ddiff       = new Date(dthen-dnow);
    gsecs       = Math.floor(ddiff.valueOf()/1000);
    CountBack(myDiv,gsecs);
  }

  function Calcage(secs, num1, num2)
  {
    s = ((Math.floor(secs/num1))%num2).toString();
    if (s.length < 2) 
    {   
      s = "0" + s;
    }
    return (s);
  }

  function CountBack(myDiv, secs)
  {
    var DisplayStr;
    var DisplayFormat = "%%D%% %%H%%:%%M%%:%%S%%";
    DisplayStr = DisplayFormat.replace(/%%D%%/g,    Calcage(secs,86400,100000));
    DisplayStr = DisplayStr.replace(/%%H%%/g,       Calcage(secs,3600,24));
    DisplayStr = DisplayStr.replace(/%%M%%/g,       Calcage(secs,60,60));
    DisplayStr = DisplayStr.replace(/%%S%%/g,       Calcage(secs,1,60));
    if(secs > 0)
    {   
      document.getElementById(myDiv).innerHTML = DisplayStr;
      setTimeout("CountBack('" + myDiv + "'," + (secs-1) + ");", 990);
    }
    else
    {
      document.getElementById(myDiv).innerHTML = "&nbsp;SOLD OUT";
    }
  }

//]]></script>

Любая помощь будет высоко ценится.

Ответы [ 2 ]

4 голосов
/ 28 ноября 2011

Это выглядит так же просто, как и изменение

var dnow    = new Date();

что-то вроде:

<?php date_default_timezone_set('Ireland/Dublin'); ?>
var dnow    = new Date( <?= time(); ?>);
0 голосов
/ 28 ноября 2011

Вы должны взглянуть на этот ответ здесь, на SO, фрагмент, написанный @pimvdb, действительно хорош и действительно читабелен. Очень просто изменить, а также.

...