Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] Ostatnio piątek każdego miesiąca, Skrypt odliczający czas..
lewin
post
Post #1





Grupa: Zarejestrowani
Postów: 18
Pomógł: 0
Dołączył: 13.02.2005

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


Mam skrypt, który odlicza czas do wybranej daty..
Jak zmodyfikować poniższy skrypt, aby automatycznie odliczał czas do każdego, ostatniego piątku miesiąca bez wprowadzania manualnie daty?
  1. <script type="text/javascript">
  2. function CD(d,o,t,x){return[x=~~(t=(d-o)/864e5),x=~~(t=(t-x)*24), x=~~(t=(t-x)*60),~~((t-x)*60)]}
  3. function R(t){
  4. t=CD(new Date(2008,02,28,18,30,00),new Date());
  5. document.getElementById('costam').innerHTML='za '+t[0]+" dni, "+t[1]+" godzin, "+t[2]+" minut, "+t[3]+"sekund";
  6. if(!t[0]&&!t[1]&&!t[2]&&!t[3])document.getElementById('costam').innerHTML='MASA KRYTYCZNA';
  7. else setTimeout('R()',1e3);
  8. }
  9.  
  10. onload=function(){R();}
  11.  
  12. <div id="costam"></div>


Ten post edytował lewin 12.03.2008, 10:02:46
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
maziak
post
Post #2





Grupa: Zarejestrowani
Postów: 155
Pomógł: 17
Dołączył: 9.07.2007

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


Witaj, wciąłeś sekundy, ostatni parametr Date.
Teraz jak spojżysz do źródła, w przeglądarce, to faktycznie pokazuje 2008,02,28,00,00,00 czyli tak jak powinno być (jak brałeś godzinę z date() to pokazywało 12, czyli nic dobrego dla skryptu, jak mniemam). Nie liczy jednak dobrze, bo przecież to nie możliwe aby brakowalo nam jeszcze 47 dni. Jednak teraz problem leży raczej po stronie JS, wiec w tym Ci raczej, ze względu na moje braki w edukacji, nie pomogę.

  1. <?php $lastfriday=strtotime("last Friday",mktime(0,0,0,date("n")+1,1));
  2. ?>
  3.  
  4. <script type="text/javascript">
  5. function CD(d,o,t,x){return[x=~~(t=(d-o)/864e5),x=~~(t=(t-x)*24), x=~~(t=(t-x)*60),~~((t-x)*60)]}
  6. function R(t){
  7. t=CD(new Date(<?php echo date('Y,m,d',$lastfriday) ?>,00,00,00),new Date());
  8. document.getElementById('costam').innerHTML='za '+t[0]+" dni, "+t[1]+" godzin, "+t[2]+" minut, "+t[3]+"sekund";
  9. if(!t[0]&&!t[1]&&!t[2]&&!t[3])document.getElementById('costam').innerHTML='MASA KRYTYCZNA';
  10. else setTimeout('R()',1e3);
  11. }
  12.  
  13. onload=function(){R();}
  14.  
  15. <div id="costam"></div>


Ten post edytował maziak 12.03.2008, 12:37:14
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 10.10.2025 - 01:51