Avances Autosuma
Publicado por Brayan (76 intervenciones) el 08/02/2017 15:49:35
Buenas tardes quiero decirles que he logrado un buen avance con lo que es la autosuma de las horas de determinadas fechas pero hay un error que no logro corregir y es que apesar de que si suma automaticamente los valores estan errados pongo el codigo aqui:
Si alguien sabe porque el error se lo agradeceria, por cierto si yo hago esto en el codigo:
Por favor ayuda X(
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
$contador= count($entradaxdia[0]); //En este linea me arroja el valor de los arrays contenido 4
foreach($entradaxdia[0] as $entradaxdia[0]){//entrada[0] tiene los siguientes valores
//01/ 11/ 2016 07:22:12
//01/ 11/ 2016 10:07:51
//01/ 11/ 2016 10:09:30
//01/ 11/ 2016 12:20:20
for($i=0;$i<$contador;$i++){
$hora[$i]=explode(":",date("H:i:s",strtotime($entradaxdia[0]['fecha'])));
$temp=0;
//sumo segundos
$segundos+=(int)$hora[$i][2];
while($segundos>=60){
$segundos=$segundos-60;
$temp++;
}
//sumo minutos
$minutos+=(int)$hora[$i][1]+$temp;
while($minutos>=60){
$minutos=$minutos-60;
$temp++;
}
//sumo horas
$horas+=(int)$hora[$i][0]+$temp;
}
if($horas<10)
$horas= '0'.$horas;
if($minutos<10)
$minutos= '0'.$minutos;
if($segundos<10)
$segundos= '0'.$segundos;
$sum_hrs = $horas.' Horas '.$minutos.' Minutos '.$segundos.' Segundos';
};
echo $sum_hrs;
//aqui es donde esta el error pues deberia darme 39:59:53 o como lo tengo en la ultima linea 39 Horas 59 Minutos 53 Segundos
//Pero en vez de eso me sale 166 Horas 59 Minutos 32 Segundos o lo que es igual a 166:59:32
Si alguien sabe porque el error se lo agradeceria, por cierto si yo hago esto en el codigo:
1
2
3
4
5
6
7
//sumo horas
$horas+=(int)$hora[$i][0]+$temp;
while($horas>=60){
$horas=$horas-60;
$temp++;
} //me proporciona esta hora 46 Horas 59 Minutos 32 Segundos la cual tambien es erronea
//cabe acotar que las horas no deberian llevar eso porq la idea es que sume las horas asi hayan 125 horas y no se resetee
Por favor ayuda X(
Valora esta pregunta


0