Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
No código abaixo, a tabela fica com as mesmas cores em todas as linhas, mas gostaria que ela ficasse com cores diferentes em cada linha. Como corrigir?
<!DOCTYPE html>
<head>
<title>Relatório </title>
<link rel="stylesheet" href="./css/estilo.css">
<meta charset="UTF-8">
</head>
<body>
<h4>Relatório </h4>
<table id="tb">
<thead>
<tr>
<th>Nome do funcionário</th>
<th>Cargo</th>
</tr>
</thead>
<tbody>
<?php
$selecionar_funcionario = $pdo->prepare("SELECT f.id_func, f.nm_funcionario, c.cargo FROM tb_funcionario f, tb_cargo c,
tb_func_cargo fc WHERE f.id_func = fc.id_func and fc.id_cargo = c.id_cargo ORDER BY c.cargo;");
$selecionar_funcionario->execute();
if($selecionar_funcionario->rowCount() == 0){
echo '<tr><td colspan="5">Não existem funcionários cadastrados ainda!</td></tr>';
}else{
$cont=0;
while($linha = $selecionar_funcionario->fetchObject()){
if ($cont % 2 == 0) {
$cor = '#fff';
}
else { $cor = '#3498db';
}
?>
<tr bgcolor="'.$cor.'">
<td><?php echo $linha->nm_funcionario;?></td>
<td><?php echo $linha->cargo;?></td>
</tr>
<?php }++$cont;}?>
</tbody>
</table>
</body>
</html>Rodrigo, fiz como indicou, mas a tabela continua com apenas uma cor em todas as linhas. Não estou entendendo onde está o erro.
O erro está aqui:
<?php }++$cont;}?>
Você não está somando a $cont, a soma está fora do while. Coloque assim:
<?php $cont++; } } ?>
Então, isso que te passei também era um erro, mas também indicaria mudar outra coisa
if ($cont % 2 == 0)
Eu trocaria esse if pelo seguinte código:
$v = $cont % 2;
if ($v == 0)Puxa, o Allex Carvalho estava certo. Obrigado. Valeu Rodrigo!
Uma pergunta! Porque não usar o bootstrap? Ou até mesmo fazer o zebramento em Js que é facinho?
srnalim, já usei o bootstrap em um projeto, mas nesse caso específico não é permitido usar um framework. Foi um vacilo mesmo.
Isso dava para fazer só com css.
table tr {
background: #3498db;
} background: #fff;
}Jquery pode?
<script type="text/javascript">
$(document).ready(function() {
$('table tbody tr:odd').addClass('ClasseCinza');
$('table tbody tr:even').addClass('Classbranca');
});
</script>Pode sim smarlin. Obrigado.
E Alex Carvalho, desse jeito ficou ainda mais fácil. Grato.
Oi Viper,
para que a parte que você seta a cor funcione, deveria estar assim: