Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PostgreSQL][PHP]Dodawanie czasu...
Forum PHP.pl > Forum > Przedszkole
exo
Witam wszystkich

mam pewien problem z ktorym nie moge sobie poradzic...sad.gif

chce wyswietlic sume godzin
zapytanie z bazy postgresql'a zwraca mi do php np:

2 days 12:45:30

a chce zeby bylo:

60:45:30

i moje pytanie po ktorej stronie najlepiej to zrobic po stronie bazy czy w php?
i oczywiscie jak to zrobic bo niemam zaielonego pojecia a probowalem juz wielu sztuczek ale nie znalazlem zadnej dzialajacej metody....

prosze o pomoc
z gory dzieki
Ghost_78
a czym jest ten zwracany czas ?
jezeli to data od nakiegos zdarzenia to mozesz sobie zapisac 2 daty - $data_start $data_end - zamienic je za pomoca strtotime($data,true);
odjac $start od $end i w wyniku masz ilosc sekund roznicy potem tylko matematyka i obliczenie ile w tych sec jest godzin, minut, sec
exo
ta wartosc to jest timestamp
ktory zwraca zsumowany czas pracy
Ghost_78
tu dostajesz czas w sekundach $czas=strtotime("2 days 12:00:30",true);

poswiecilem chwile - tu masz gotowca:
  1. $czas=strtotime("2 days 12hour 15min 0sec",true)-1;
  2. echo $czas.'<br>';
  3. $godzin = round($czas/3600);
  4. $godzin_s = $godzin*3600;
  5. $minut = round(($czas-$godzin_s)/60);
  6. $minut_s = $minut*60;
  7. $sec = ($czas-($godzin_s+$minut_s));
  8. echo "czas $godzin_s+$minut_s<br>";
  9. echo "$godzin:$minut:$sec";

musisz tylko w takim formacie jak jest teraz przekazac dane do strtotime
troche tak na partyzanta ale nie przychodzi mi nic innego teraz do glowy
exo
Ghost_78 dzieki za pomoc.
ugryzlem to z innej strony jednak smile.gif
  1. function time_format($obj){
  2. $x=str_replace(" ","",$obj);
  3. if (strpos($x, "days")==null){
  4. if (strpos($x, "day")==null){
  5. $wynik=$x;
  6. } else {
  7. $x=explode("day", $x);
  8. $time=explode(":", $x[1]);
  9. $wynik=$x[0]*24+$time[0].':'.$time[1].':'.$time[2];
  10. }
  11. } else {
  12. $x=explode("days", $x);
  13. $time=explode(":", $x[1]);
  14. $wynik=$x[0]*24+$time[0].':'.$time[1].':'.$time[2];
  15. }
  16.  
  17. return $wynik;
  18. }


w kazdym badz razie i tak dzieki.

TEMAT DO ZAMKNIECIA
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.