Page 1 sur 1

Affichage requete dans tableau html à ligne colorée alternée

Posté : 14 juil. 2005, 19:20
par Alexandre
bonjour à tous,

Je souhaiterais afficher les resultats de ma requête SQL dans un tableau html avec une alternance de couleur entre chaque ligne du style ( Rouge vert Bleu puis Rouge vert bleu etc... jusqu'à la fin ).

Pourriez vous m'aider s'il vous plaît, je vous remercie à l'avance.
Voici le script que j'ai ecrit pour récupérer ma requete dans un simple tableau sans alternance de couleur :


Alexandre



<?php
include 'connexion.php';
$sql = 'SELECT salarie FROM personnel WHERE salaire>1000;
$result= mysql_query($sql);
?>

<html>
<head> </head>

<body>

<table border="1">

<?php
while ($rows=mysql_fetch_array($result)){
echo "<tr><td>".$rows['salarie']."</td></tr>" ;
?>

</table>

</body>
</html>

Posté : 14 juil. 2005, 19:46
par Cyrano
Dans un premier temps, merci d'utiliser les boutons [php] ou [code] lorsque tu envoies du code sur le forum, ça sera plus facile à lire pour tout le monde.

Ensuite pour ton problème, tu peux utiliser un pointeur: initialises un pointeur $i à zéro avant ta boucle. Ensuite à l'intérieur de la boucle, utilise un modulo et avant de fermer la boucle, incrémente le pointeur.

Exemple sur lequel t'appuyer:
<html>
<head>
</head>
<body>
<table border="1">
<?php
$c = 0;
for ($i = 0; $i < 25; $i++)
{
    if($c % 3 == 0)
    {
        $couleur = "red";
    }
    elseif(($i-1) % 3 == 0)
    {
        $couleur = "green";
    }
    else
    {
        $couleur = "blue";
    }
    ?>
  <tr style="background-color: <?php echo($couleur); ?>">
    <td><p>bla bla bla bla bla : <?php echo($c); ?></p></td>
  </tr>
    <?php
    $c++;
}
?>
</table>
</body>
</html>

Reglé

Posté : 14 juil. 2005, 20:11
par Alexandre
merci beaucoup Cyrano pour ta réponse rapide claire et nette. Le code marche parfaitement !!!!!!!!!!!!!!!!!!!

Posté : 14 juil. 2005, 20:13
par fggdm
$c++;
C'est un peu confusant :lol:

Posté : 14 juil. 2005, 20:28
par Cyrano
$c++;
C'est un peu confusant :lol:
C'est pour tromper l'ennemi :langue: