Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá galera, estou fazendo uma consulta no banco pra retorna a média desde 01-01-2011 até a data atual, ele faz a soma de duas horas(hora1 e hora2) e depois pego esse valor e faço a média, até ai tá tranquilo, só que na lista eu quero que fique em destaque quem tem hora no mês atual, só que não acontece, pq minha consulta não retorna o mês 09.
O código segue abaixo.
<?
$query = "SELECT u.login, MONTH(t.data) as mes, sum(t.hora1) as horat1, sum(t.hora2) as horat2 FROM totalhoras t inner join usuario u WHERE t.login=u.login and t.data BETWEEN '".$ano_atual."-01-01' AND '".$ano_atual.'-'.$parametro.'-'.$dia_atual."' and u.cargo='Guarda Municipal' GROUP BY t.login ORDER BY login ASC ";
echo''.$query;
$result = $obj->executaQuery($query);
$dados = mysql_num_rows($result);
echo "<table width=100% border=0 cellpadding=0 cellspacing=0 align=left>";
$coluna = 3;
if ($totalT>0) {
for($i=0;$i<=$totalT;$i++) {
if (($i%$coluna)==0) {
echo "</tr>"; //oque é isto?
}
echo '<td valign=top align=left>
<table border=0 cellspacing=0 cellpadding=0 align=left>
<tr>';
if ( $dados = mysql_fetch_array($result) )
{
$login = $dados['login'];
$hora1 = $dados['horat1'];
$mestemp = $dados['mes'];
$mediaH1 = $hora1/$parametro;
$media1 = number_format( $mediaH1, 2, ",", "." );
$hora2 = $dados['horat2'];
$mediaH2 = $hora2/$parametro;
$media2 = number_format( $mediaH2, 2, ",", "." );
echo'T: '.$mestemp;
if($mestemp==9){
$logintemp = $dados['login'];
}
echo '<td bgcolor=';if($logintemp==$login){ echo'#cccccc';}else{ echo'#ffffff';} echo ' class=nome width="150">'.$login.'</td>
<td bgcolor=';if($logintemp==$login){ echo'#cccccc';}else{ echo'#ffffff';} echo ' align=center class=nome>('.$media1.') ('.$media2.')</td>';
}
echo'
</tr>
</table>
</td> ';
}
} else {
echo "Nenhum registro encontrado";
}
echo'</table>';
?>Já tentei essa opção mas não deu tb.
Pra calcular a média está somando a hora do mês 9, mas qd peço pra retornar o mês 9 para eu saber quem fez hora no mês, isso não funciona.
Pq na minha lista gostaria que ficasse em destaque quem já hora extra no mês atual.
se nao me engano, o between vai pegar apenas ENTRE esses valores
tipo
BETWEEN 2 AND 4,
vai retornar apenas o 3
tente colocar dia_atual + 1