by_stoco 0 Denunciar post Postado Agosto 29, 2005 Cora colegas de forum...... Gostaria que alguém me ajudasse na seguinte situação! Tenho 2 campos em meu BD que guardam a hora de entrada e a hora de saída de um determinado usuário ('hora_entrada' e 'hora_saida') que estão no formato TIME no MySQL. Gostaria de calcular o tempo gasto por este usuário. A grosso modo seria: $tot_horas = $hora_saida- $hora_entrada; Teria alguma forma de se fazer isso sem usar um algoritmo para transformar as horas em minutos ou vice-versa????? Desde já agradeço a atenção de todos! Compartilhar este post Link para o post Compartilhar em outros sites
by_stoco 0 Denunciar post Postado Agosto 30, 2005 Gostaria de dizer que a solução do caro colega não funcionou! Compartilhar este post Link para o post Compartilhar em outros sites
Rauffer 0 Denunciar post Postado Agosto 31, 2005 Ta certinha a função do AAlves :wacko: Que problema ta dando ae? tem certeza que ta usando de maneira correta? posta ae pra gente ver :) Abraço Compartilhar este post Link para o post Compartilhar em outros sites
by_stoco 0 Denunciar post Postado Agosto 31, 2005 Vamos lá então: Afunção do AAlves já está criada. PHP [*] [*]$junta_total = diferenca($dados_ponto_data['he_manha'],$dados_ponto_data['hs_manha']); [*]print "<script>alert('$junta_total');</script>"; [*] Os campos do BD estão definidos como TIME. A hora informada foi: 8:00:00 e 09:10:00 respectivamente! O resultado dado pela função foi: 1.16666666667 Como faço para tratar esse resultado? Ou seja, retornar 01:10:00 como diferença entre o horário de entrada e o horário de saída. Grato pela atenão de todos! Compartilhar este post Link para o post Compartilhar em outros sites
by_stoco 0 Denunciar post Postado Agosto 31, 2005 PS: Gostaria de informar também que ao invés de dividir o resultado da diferença por 60 eu dividi por 3600.... Para retornar o valor em horas!!!! Compartilhar este post Link para o post Compartilhar em outros sites
by_stoco 0 Denunciar post Postado Setembro 1, 2005 Ainda sem respostas.......... Compartilhar este post Link para o post Compartilhar em outros sites
by_stoco 0 Denunciar post Postado Setembro 1, 2005 Caros colegas de forum..... Após um melhor estudo da forma matemática de calcular a diferença entre horas convertando tudo para segundos, consegui desenvolver uma função para o devido fim! PHP [*]function Difer_horas($hora1,$hora2){ [*] $entrada = "8:37:02"; [*] $saida ="11:53:24"; [*] $hora1 = explode(":",$entrada); [*] $hora2 = explode(":",$saida); [*] $acumulador1 = ($hora1[0] * 3600) + ($hora1[1] * 60) + $hora1[2]; [*] $acumulador2 = ($hora2[0] * 3600) + ($hora2[1] * 60) + $hora2[2]; [*] $resultado = $acumulador2 - $acumulador1; [*] $hora_ponto = floor($resultado / 3600); [*] $resultado = $resultado - ($hora_ponto * 3600); [*] $min_ponto = floor($resultado / 60); [*] $resultado = $resultado - ($min_ponto * 60); [*] $secs_ponto = $resultado; [*] return $hora_ponto.":".$min_ponto.":".$secs_ponto; [*]} Gostaria de contar ainda com uma solução que possa melhorar este cóigo.... Grato pela atenção de todos...... Compartilhar este post Link para o post Compartilhar em outros sites
http://Deyvin.exe 0 Denunciar post Postado Agosto 9, 2007 Cara, você eh f***!você lançou a dúvida e se auto respondeu e me ajudou pra carai.to a 3 horas buscando uma solução simples, a sua foi a melhor que encontrei!pow te devo essa cara.abraço Compartilhar este post Link para o post Compartilhar em outros sites
sadboar 0 Denunciar post Postado Agosto 9, 2007 Aff... pq o povo acha q só o php resolve as coisas???? Tem q estudar um pouco de mysql tb SELECT TIMEDIFF('23:59:59','21:52:59') as HORA; O primeiro termo é a hora maior... o segundo a menor. você pode usar datas tb qndo a diferença é de dias. Compartilhar este post Link para o post Compartilhar em outros sites