Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> data i czas - odliczanie
termin
post
Post #1





Grupa: Zarejestrowani
Postów: 113
Pomógł: 1
Dołączył: 13.05.2003
Skąd: Wrocław

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


Witam, mam 2 daty, np. "2005-06-10 10:10:00" i date("Y-m-d G:i:s").
Pierwsza data jest datą przyszłą, chciałbym aby wynikiem końcowym było np. pozostało do końca 2dni, 5:10:34, wiadomo ze po odświeżeniu strony ten licznik się zmieni. Zrobilem ze liczy ile dni pozostało, do konca ale jak liczyć godziny, minuty i sekundy?

Naskrobalem cos takiego lecz chyba cos z tym round robie nie tak

  1. <?
  2. function date_diff($date1, $time1, $date2, $time2)
  3. {
  4. $d1 = explode(&#092;"-\", $date1);
  5. $y1 = $d1[0];
  6. $m1 = $d1[1];
  7. $d1 = $d1[2];
  8.  
  9. $t1 = explode(&#092;"-\", $time1);
  10. $G1 = $t1[0];
  11. $i1 = $t1[1];
  12. $s1 = $t1[2];
  13.  
  14. $d2 = explode(&#092;"-\", $date2);
  15. $y2 = $d2[0];
  16. $m2 = $d2[1];
  17. $d2 = $d2[2];
  18.  
  19. $t2 = explode(&#092;"-\", $time2);
  20. $G2 = $t2[0];
  21. $i2 = $t2[1];
  22. $s2 = $t2[2];
  23.  
  24. $date1_set = mktime($G1, $i1, $s1, $m1, $d1, $y1);
  25. $date2_set = mktime($G2, $i2, $s2, $m2, $d2, $y2);
  26.  
  27. $dni=(round(($date2_set-$date1_set)/(60*60*24)));
  28. $godz=(round(($date2_set-$date1_set)/(60*60)));
  29. $minut=(round(($date2_set-$date1_set)/(60)));
  30. $sekund=(round(($date2_set-$date1_set)));
  31.  
  32. return $dni.&#092;"d \".$godz.\":\".$minut.\":\".$sekund;
  33. }
  34. echo date_diff(date(&#092;"Y-m-d\"), date(\"G:i:s\"), '2005-06-08', '10:10:00');
  35. ?>


Ten post edytował termin 8.06.2005, 07:52:04
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 2)
-serden-
post
Post #2





Goście







wyklepane na szybko ;] - powinno działać

Kod
<?php
    $d1 ="2005-06-08 10:26:00";
    $d2 = date("Y-m-d G:i:s");
    $r = strtotime($d1) - strtotime($d2);  
    
    $dni = date("z",$r);
    $gm = date("G", $r) -1;
    if ($gm < 0)
    {
        $gm = 23;
        $dni --;
    }

    echo 'pozostało do końca '.$dni.' dni, '.$gm.date(":i:s", $r);
?>
Go to the top of the page
+Quote Post
termin
post
Post #3





Grupa: Zarejestrowani
Postów: 113
Pomógł: 1
Dołączył: 13.05.2003
Skąd: Wrocław

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


Heh działa - dzieki
Go to the top of the page
+Quote Post

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: 24.08.2025 - 03:59