Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Odliczanie czasu
R0ckY
post 8.07.2012, 12:40:15
Post #1





Grupa: Zarejestrowani
Postów: 37
Pomógł: 0
Dołączył: 12.12.2010

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


Witam wink.gif Postanowiłem trochę "zmodyfikować" skrypt odliczania w PHP z internetu, ale w taki sposób żeby pokazywał Dni, godziny i minuty (z sekundami sobie nie poradziłem) ale sobie i z tym nie poradziłem ponieważ raz działa raz nie.
Problem polega na tym, że w przypadku gdy czas jest mniejszy niż 30 minut w danej godzinie to czas jest ujemny i leci w górę zamiast w dół.

Co zrobić aby to zadziałało?

  1. <?php
  2. function odlicz($hour, $minute, $second, $month, $day, $year) {
  3.  
  4. $eventDate = mktime($hour, $minute, $second, $month, $day, $year);
  5. $today = mktime();
  6.  
  7. $secondsTo = $eventDate - $today;
  8. $minutesTo = round($secondsTo / 60);
  9. $hoursTo = round($minutesTo / 60);
  10. $daysTo = round($hoursTo / 24);
  11.  
  12. $hours = round(($minutesTo/60)-($daysTo*24));
  13. $mins = round(($secondsTo/60)-($hoursTo*60));
  14.  
  15.  
  16. $values = array (
  17. "min" => $mins,
  18. "hour" => $hours,
  19. "days" => $daysTo,
  20. );
  21.  
  22. return $values;
  23.  
  24. }
  25.  
  26. ?>


Pozdrawiam smile.gif
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 2)
gr56
post 8.07.2012, 13:18:55
Post #2





Grupa: Zarejestrowani
Postów: 77
Pomógł: 15
Dołączył: 19.11.2011

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


  1. function odlicz($hour, $minute, $second, $month, $day, $year) {
  2.  
  3. $eventDate = mktime($hour, $minute, $second, $month, $day, $year);
  4. $today = time();
  5.  
  6. $seconds = $eventDate - $today;
  7.  
  8. return array (
  9. "days" => floor($seconds/(24*60*60)),
  10. "hour" => floor(($seconds%(24*60*60))/(60*60)),
  11. "min" => floor((($seconds%(24*60*60))%(60*60))/60),
  12. "seconds" => floor((($seconds%(24*60*60))%(60*60))%60)
  13. );
  14. }

Ogólnie mówiąc:
licząc dni po prostu dzielisz przez sekundy,
licząc godziny dzielisz przez resztę z dzielenia dni,
licząc minuty dzielisz przez resztę z dzielenia godzin,
licząc sekundy dzielisz przez resztę z dzielenia minut
Go to the top of the page
+Quote Post
R0ckY
post 9.07.2012, 20:06:08
Post #3





Grupa: Zarejestrowani
Postów: 37
Pomógł: 0
Dołączył: 12.12.2010

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


Dzięki wielkie smile.gif Temat do zamknięcia.
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: 20.07.2025 - 06:10