Boucle while avec un changement simultané
Résolu
wildchildforlife
Messages postés
74
Date d'inscription
Statut
Membre
Dernière intervention
-
wildchildforlife Messages postés 74 Date d'inscription Statut Membre Dernière intervention -
wildchildforlife Messages postés 74 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je voudrai realiser une boucle while, avec un changement simultané de 2 couleurs de fond d'un tableau !
Mon code est simple le voici :
while($resultats = mysql_fetch_array($selection_recherche) ) //boucle affichant les résultats
{
?>
<tr bgcolor="DANS CETTE PARTIE JE VEUX QUE MA BOUCLE CHANGE A CHAQUE FOIS DE COULEURS, PAR EXEMPLE RESULTAT NUM 1 ELLE AFFICHE "#000000" ......RESULTAT NUM 2 ELLE AFFICHE "#141414".....RESULTAT NUM 3 ELLE REAFFICHE ""#000000" ....AINSI DE SUITE " >
<td height="23"><?php echo '<center>' . $resultats['date'] . '</center>' ; ?></td>
<td ><?php echo '<center>' . $resultats['categorie'] . '</center>' ; ?></td>
<td ><?php echo '<strong>' . $resultats['nom'] . '</strong>' ; ?></td>
<td><?php echo '<center>' . $resultats['taille'] . '</center>' ; ?></td>
<td><?php echo '<center>' . $resultats['seeders'] . '</center>' ; ?></td>
<td><?php echo '<center>' . $resultats['leechers'] . '</center>' ; ?></td>
</tr>
<?php
Ne vous inquiétez pas pour les balises manquantes parceque je n'ai copié que le bout de code ou je bloquais, merci de bien vouloir m'aider !!
Je voudrai realiser une boucle while, avec un changement simultané de 2 couleurs de fond d'un tableau !
Mon code est simple le voici :
while($resultats = mysql_fetch_array($selection_recherche) ) //boucle affichant les résultats
{
?>
<tr bgcolor="DANS CETTE PARTIE JE VEUX QUE MA BOUCLE CHANGE A CHAQUE FOIS DE COULEURS, PAR EXEMPLE RESULTAT NUM 1 ELLE AFFICHE "#000000" ......RESULTAT NUM 2 ELLE AFFICHE "#141414".....RESULTAT NUM 3 ELLE REAFFICHE ""#000000" ....AINSI DE SUITE " >
<td height="23"><?php echo '<center>' . $resultats['date'] . '</center>' ; ?></td>
<td ><?php echo '<center>' . $resultats['categorie'] . '</center>' ; ?></td>
<td ><?php echo '<strong>' . $resultats['nom'] . '</strong>' ; ?></td>
<td><?php echo '<center>' . $resultats['taille'] . '</center>' ; ?></td>
<td><?php echo '<center>' . $resultats['seeders'] . '</center>' ; ?></td>
<td><?php echo '<center>' . $resultats['leechers'] . '</center>' ; ?></td>
</tr>
<?php
Ne vous inquiétez pas pour les balises manquantes parceque je n'ai copié que le bout de code ou je bloquais, merci de bien vouloir m'aider !!
A voir également:
- Boucle while avec un changement simultané
- Changement dns - Guide
- Changement d'heure - Guide
- Changement d'écriture facebook - Guide
- Changement clavier azerty - Guide
- Changement carte graphique - Guide
3 réponses
Voilà la solution :
while($resultats = mysql_fetch_array($selection_recherche) ) //boucle affichant les résultats { ?> <tr bgcolor="<?php if($i++%2) echo '#141414'; else echo '#000000'; ?>"> <td height="23"><?php echo '<center>' . $resultats['date'] . '</center>' ; ?></td> <td ><?php echo '<center>' . $resultats['categorie'] . '</center>' ; ?></td> <td ><?php echo '<strong>' . $resultats['nom'] . '</strong>' ; ?></td> <td><?php echo '<center>' . $resultats['taille'] . '</center>' ; ?></td> <td><?php echo '<center>' . $resultats['seeders'] . '</center>' ; ?></td> <td><?php echo '<center>' . $resultats['leechers'] . '</center>' ; ?></td> </tr> <?php }
Ohhh merciii chere jeff, c'est genial de ta part =) je vais valider resolu, mais des explications s'imposent >.< tu voudrai bien developpé un peu et m'expliquer ton bout de code ??
Voila ce que j'ai compris :
tu as mis une incrementation a la variable i oui mais.....
Voila ce qui m'echappe :
Tu n'as même declaré la variable avant de l'incrementé :s, et le %2, veut dire ?
Merci bcp pour ton aide et pour ton explication =) !!
Voila ce que j'ai compris :
tu as mis une incrementation a la variable i oui mais.....
Voila ce qui m'echappe :
Tu n'as même declaré la variable avant de l'incrementé :s, et le %2, veut dire ?
Merci bcp pour ton aide et pour ton explication =) !!
J'aurais effectivement dû déclarer la variable plus haut, avant le while en mettant $i=0;
Pour les explications : $i++ incrémente effectivement $i, donc à la première itération il vaut 0, puis 1, puis 2, puis 3, etc.
%2 signifie modulo 2, c'est un opérateur qui donne le reste de la division entière par deux. En gros, ça donne 0 si le chiffre est pair et 1 si le chiffre est impair.
Ainsi quand $i est impair, le test vaut 1, donc "true", dans le cas contraire il vaut "false" :
finalement, quant $i est impair on affiche #141414, dans le cas contraire on affiche #000000
Pour les explications : $i++ incrémente effectivement $i, donc à la première itération il vaut 0, puis 1, puis 2, puis 3, etc.
%2 signifie modulo 2, c'est un opérateur qui donne le reste de la division entière par deux. En gros, ça donne 0 si le chiffre est pair et 1 si le chiffre est impair.
Ainsi quand $i est impair, le test vaut 1, donc "true", dans le cas contraire il vaut "false" :
finalement, quant $i est impair on affiche #141414, dans le cas contraire on affiche #000000