Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP/JS]Odliczanie...
Predator446
post 4.05.2007, 15:55:29
Post #1





Grupa: Zarejestrowani
Postów: 63
Pomógł: 0
Dołączył: 16.04.2006

Ostrzeżenie: (0%)
-----


Witam mam przykladowy kod ktory odlicza czas do konkretnej daty:

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>


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:

  1. (<?php echo date(U); ?>*1000)


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?
Go to the top of the page
+Quote Post
kossa
post 4.05.2007, 17:38:53
Post #2





Grupa: Zarejestrowani
Postów: 1 165
Pomógł: 9
Dołączył: 9.04.2002
Skąd: Toruń

Ostrzeżenie: (0%)
-----


użyj ajax'a aby w tle połączył się z serwerem i porównał czas serwera z klientem

Łukasz


--------------------
Go to the top of the page
+Quote Post
Predator446
post 4.05.2007, 17:49:18
Post #3





Grupa: Zarejestrowani
Postów: 63
Pomógł: 0
Dołączył: 16.04.2006

Ostrzeżenie: (0%)
-----


Hmm z ajaxa nigdy nie korzystałem i nie mam pomysłu jak by on miał rozwiązać ten problem (jakaś rada? przykład?). Może jest jakiś inny sposób by rozwiązać ten problem bez ajaxa?
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 16.06.2025 - 19:30