No to praca niemal doskonałym. Teraz użyj tego kodu do obliczenia: 23:50 - 00:10 Zobacz, co otrzymasz. Lub nawet 23:30 - 01:30. To jest bałagan. Ponieważ otrzymuję odpowiedź inną drogę w PHP:
$date1 = strtotime($_POST['started']);
$date2 = strtotime($_POST['ended']);
$interval = $date2 - $date1;
$playedtime = $interval/60;
Ale nadal, to działa jak twoje. Zgaduję, że muszę przynieść również daty?
I znowu: Moje ciężkie badania i rozwój pomogły mi.
if (isset($_POST['calculate'])) {
$d1 = $_POST['started'];
$d2 = $_POST['ended'];
if ($d2 < $d1) {
$date22 = date('Y-m-');
$date222 = date('d')-1;
$date2 = $date22."".$date222;
} else {
$date2 = date('Y-m-d');
}
$date1 = date('Y-m-d');
$start_time = strtotime($date2.' '.$d1);
$end_time = strtotime($date1.' '.$d2); // or use date('Y-m-d H:i:s') for current time
$playedtime = round(abs($start_time - $end_time)/60,2);
}
I tak oblicza się czas do następnego dnia. // edycja. Najpierw miałem date1 jnd date2 włączone. Potrzebuję -1, ponieważ obliczenia przychodzą dopiero następnego dnia, a pierwsza data wczoraj.
Po poprawie i dużo energii mózgu z moim przyjacielem wpadliśmy do tego:
$begin=mktime(substr($_GET["start"], 0,2),substr($_GET["start"], 2,2),0,1,2,2003);
$end=mktime(substr($_GET["end"], 0,2),substr($_GET["end"], 2,2),0,1,3,2003);
$outcome=($end-$begin)-date("Z");
$minutes=date("i",$outcome)+date("H",$outcome)*60; //Echo minutes only
$hours = date("H:i", $outcome); //Echo time in hours + minutes like 01:10 or something.
Więc rzeczywiście trzeba tylko 4 linie kodu, aby uzyskać wynik. Możesz wziąć tylko minuty lub pokazać pełny czas (jak różnica wynosi 02:32) 2 godziny i 32 minuty. Co najważniejsze: Nadal można obliczyć noc w 24-godzinnym zegarze, czyli: Start time 11:50 PM, powiedzmy 01:00 AM (w 24-godzinnym takcie 23:50 - 01:00), ponieważ w trybie 12-godzinnym tak działa.
Co najważniejsze: nie musisz formatować danych wejściowych. Możesz użyć zwykłego 2300 jako wejścia 23:00. Ten skrypt przekonwertuje pole tekstowe, aby sam poprawił format. Ostatni skrypt używa standardowego formularza html z method = "get", ale możesz go również przekonwertować, aby użyć również metody POST.
Czy używasz 'Java',' JScript' lub 'Javascript'? Wszystkie są różnymi językami. – Paulpro
'javascript' to ** NIE ** język skryptowy' java'! – gdoron
Czy są to rzeczywiste daty w polu tekstowym? Czy możesz opublikować kod HTML i niektóre przykładowe dane? – mattytommo