Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][SQL]Problem z obliczeniem różnicy wyników z dwóch pól sql
Forum PHP.pl > Forum > Przedszkole
PiiiT
Witam, mam problem prawdopodobnie z podstawieniem wyników z bazy danych. Pobieram wyniki z kolumny start i stop, w kolumnie roznica wynikiem jest 0 g 0 m mimo iż daty różnią się od siebie.
Skrypt konwertowania z datatime na timestamp działa poprawnie bez zapytania do bazy danych SQL po ręcznym wpisaniu dat.
Proszę o pomoc w jaki sposób wstawic wyniki start i stop pobrane z bazy danych do skryptu aby poprawnie obliczał różnicę. Z góry dziękuję za pomoc.

CODE



$wynik=mysql_query("SELECT start, stop FROM obsluga");

$ilosc=mysql_num_rows($wynik);



print("");

print("");

print("Start\n");

print("Stop\n");

print("Różnica\n");

print("");



$teraz=gmmktime($wynik[start]);

$dzien=gmmktime($wynik[stop]);



// wyliczanie roznicy

$sekund = abs($teraz-$dzien);

$minut = (int)($sekund/60);

$godzin = (int)($minut/60);

// wyliczanie calego okresu

$sekund = (int)($sekund-$minut*60);

$minut = (int)($minut-$godzin*60);

$godzin = (int)($godzin-$dni*24);





for ($x = 0; $x < $ilosc; $x++) {

print("");

print(mysql_result($wynik,$x, "start"));

print("");

print(mysql_result($wynik,$x, "stop"));

print("");

print("'$godzin' g '$minut' m");

print("");

}

print("");

?>
Pilsener
A daty w bazie masz w jakim formacie? Sprawdź funkcją checkdate, czy pobierana data jest datą - jeśli nie
  1. <?php
  2. $dzien=gmmktime($wynik[stop]);
  3. ?>
- a ta funkcja działa prawidłowo? Rozwal datę explodem i spróbuj wstawić ręcznie wg składni:
Cytat
int gmmktime ( int $godzina, int $minuta, int $sekunda, int $miesiąc, int $dzień, int $rok [, int $letni/zimowy] )
PiiiT
Podana data jest zapisywana i pobierana z bazy jako datetime. Próbowałem w inny sposób i zamieniam datetime na sekundy, z sekund na minuty, ale w momencie kiedy chcę aby wynik był w godzinach i minutach w wyniku pojawia się błąd tak jak napisałem w innym poscie http://forum.php.pl/index.php?showtopic=95124&hl= i narazie program wylicza czas w minutach a wolałbym w minutach.. Czy ten kod
  1. <?php
  2. int gmmktime ( int $godzina, int $minuta, int $sekunda, int $miesiąc, int $dzień, int $rok [, int $letni/zimowy] )
  3. ?>

pozwoli mi odjąc osobno minuty i osobno godziny?
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.