Para esto debo usar un registro en la base de datos. A la entrada se guarda la hora en la BBDD en formato date().
A la salida hago una lectura de la BBDD y obtengo la hora de entrada, con un nuevo date() tengo la hora actual.
Debo restar de alguna manera ambas para obtener el tiempo que transcurrio.
Para esto hice un substr de la hora de entrada para colocar los valores en un mktime().
Algo asi
Código:
Se supone que la variable $mindif deberia tener los minutis transcurridos. Pero si el usuario esta entre las 23:xx y las 00:xx obtengo un valor enorme, mas de 1300.$fecha2 = time(); $min2=date("i",$fecha2); $horas2=date ("H",$fecha2); $consulta=consultasql $HoraEnt=BBDD::ConsultaHoraEnt($consulta); $HoraPars=substr($HoraEnt,11,2);//Porque tambien imprimo la fecha $MinPars=substr($HoraEnt,14,2); $timestampSal = mktime($horas2,$min2,0,1,1,1); $timestampEnt = mktime($HoraPars,$MinPars,0,1,1,1); $dif = abs($timestampSal - $timestampEnt); $mindif= floor($dif/60);
No encuentro el error. Que puede ser.
Gracias de antemano al genio que se de cuenta!!