Kod
<script type="text/javascript">
<!--
var dodaty=new Date(2007,10,7,17,57,00);
document.write('<input type="text" id="formularz" size="45" value="" />');
var msSec = 1000;
var msMin = 60 * msSec;
var msGodz = 60 * msMin;
var msDniu = 24 * msGodz;
function odliczanie()
{
var data=new Date();
var roznica=dodaty.getTime()-data.getTime();
var dni=Math.floor(roznica/msDniu);
roznica-=dni*msDniu;
var godzin=Math.floor(roznica/msGodz);
roznica-=godzin*msGodz;
var minut=Math.floor(roznica/msMin);
roznica-=minut*msMin;
var sekund=Math.floor(roznica/msSec);
var wynik=(dni<0)?'Czas min±ł':'Pozostało dni '+dni+', godzin '+godzin+', minut '+minut+', sekund '+sekund;
document.getElementById("formularz").value=wynik;
setTimeout("odliczanie();",1000);
}
odliczanie();
//-->
</script>
<!--
var dodaty=new Date(2007,10,7,17,57,00);
document.write('<input type="text" id="formularz" size="45" value="" />');
var msSec = 1000;
var msMin = 60 * msSec;
var msGodz = 60 * msMin;
var msDniu = 24 * msGodz;
function odliczanie()
{
var data=new Date();
var roznica=dodaty.getTime()-data.getTime();
var dni=Math.floor(roznica/msDniu);
roznica-=dni*msDniu;
var godzin=Math.floor(roznica/msGodz);
roznica-=godzin*msGodz;
var minut=Math.floor(roznica/msMin);
roznica-=minut*msMin;
var sekund=Math.floor(roznica/msSec);
var wynik=(dni<0)?'Czas min±ł':'Pozostało dni '+dni+', godzin '+godzin+', minut '+minut+', sekund '+sekund;
document.getElementById("formularz").value=wynik;
setTimeout("odliczanie();",1000);
}
odliczanie();
//-->
</script>
I wszystko chodzi lecz czas pobierany jest z komputera użytkownika i gdy przestawi naprzyklad sobie czas na komputerze o kilka dni dalej to zmieni to odliczanie skryptu.
Jeśli znowu przerobilem że roznica czasu jest pobierana z serwera tzn. przez php:
To skrypt dziala poprawnie lecz nie wyświetla na bieżąco na stronie aktualnego czasu. (nie odświeża tak jak przy czystym js).
Moje pytanie brzmi jak przerobić ten kod by pobieral czas z serwera i przy zmianie czasu na komputerze klienta wartość licznika czasu się nie zmienila i byl wyswietlany zawsze aktualny czas?