Boucle while, question d'affichage
Résolu
David987
Messages postés
145
Statut
Membre
-
David987 Messages postés 145 Statut Membre -
David987 Messages postés 145 Statut Membre -
Bonjour à tous,
Je viens vers vous pour une petite interrogation qui est la suivante :
Je m'explique, j'ai une boucle while, qui fonctionne très bien, j'ai aucun bug ni rien, mais j'aimerais savoir s'il est possible que l'incrémentation d'une variable peut être affiché dans l'ordre inversé ?
Par exemple ma variable $incrementation = 1 (initialisation).
A chaque traitement de la boucle, la variable prend 1 donc ça donne :
1
2
3
4
...etc
Ma question est, est-ce possible de l'afficher comme telle :
...etc
4
3
2
1
et si oui, comment ça se passe dans une boucle while ?
Merci par avance pour votre réponse et aide.
David.
Je viens vers vous pour une petite interrogation qui est la suivante :
Je m'explique, j'ai une boucle while, qui fonctionne très bien, j'ai aucun bug ni rien, mais j'aimerais savoir s'il est possible que l'incrémentation d'une variable peut être affiché dans l'ordre inversé ?
Par exemple ma variable $incrementation = 1 (initialisation).
A chaque traitement de la boucle, la variable prend 1 donc ça donne :
1
2
3
4
...etc
Ma question est, est-ce possible de l'afficher comme telle :
...etc
4
3
2
1
et si oui, comment ça se passe dans une boucle while ?
Merci par avance pour votre réponse et aide.
David.
Configuration: Windows / Chrome 96.0.4664.93
4 réponses
-
Bonjour
Ta variable incrémenter fais partie de la condition de ton while où elle est juste incrémentee dans la boucle ?
Dans l'idéal, il faudrait nous montrer ton code
-
Ma variable ne fait pas partie de la boucle voici mon code en dessous
$nbr_vadrouille = 1; $select_info_depense = $bdd->query("SELECT *, DATE_FORMAT(date_objet, '%d/%m/%Y') AS dateFR, DATE_FORMAT(date_objet, '%H:%i:%s') AS heureFR FROM vadrouille WHERE id_membre ='".$id_joueur."' ORDER BY ai DESC LIMIT $limit_start, $pagination"); while($operation = $select_info_depense->fetch()) { if($operation['id_objet'] == 0) { $nom_objet = 'Ton pokadechi n\'est pas encore revenu'; } else { if($operation['id_objet'] == 1) { $nom_objet = 'PokeBall'; } elseif($operation['id_objet'] == 2) { $nom_objet = 'SuperBall'; } elseif($operation['id_objet'] == 3) { $nom_objet = 'HyperBall'; } elseif($operation['id_objet'] == 4) { $nom_objet = 'MasterBall'; } elseif($operation['id_objet'] == 12) { $nom_objet = 'SuperBonbon'; } elseif($operation['id_objet'] == 35) { $nom_objet = 'Potion'; } elseif($operation['id_objet'] == 5000) { $nom_objet = '5000 P$'; } elseif($operation['id_objet'] == 10) { $nom_objet = '10 Pokelite'; } elseif($operation['id_objet'] == 1111) { $nom_objet = 'Alakazamite'; } elseif($operation['id_objet'] == 531) { $nom_objet = 'Nanmeouie'; } else { } } ?> <tr> <td><?php echo $nbr_vadrouille++; ?></td> <td> <img src="../../images/pokemon/<?php echo $operation['id_pokadechi'];?>.png"</img> </td> <td> <?php echo $nom_objet;?> </td> <td> <?php echo ''.$operation['dateFR'].' à '.$operation['heureFR'].'';?> </td> </tr> <?php } -
Alors,
Déjà, ton code pourrait être largement simplifié comme ceci :$nbr_vadrouille = 1; $obj = [ '0' => 'Ton pokadechi n\'est pas encore revenu' ,'1' => 'PokeBall' ,'2' => 'SuperBall' ,'3' => 'HyperBall' ,'4' => 'MasterBall' ,'10' => '10 Pokelite' ,'12' => 'SuperBonbon' ,'35' => 'Potion' ,'531' => 'Nanmeouie' ,'1111' => 'Alakazamite' ,'5000' => '5000 P$' ]; $select_info_depense = $bdd->query("SELECT *, DATE_FORMAT(date_objet, '%d/%m/%Y') AS dateFR, DATE_FORMAT(date_objet, '%H:%i:%s') AS heureFR FROM vadrouille WHERE id_membre ='".$id_joueur."' ORDER BY ai DESC LIMIT $limit_start, $pagination"); while($operation = $select_info_depense->fetch()) { $nom_objet = !empty($obj[$operation['id_objet']]) ? $obj[$operation['id_objet']] : '-'; ?> <tr> <td><?php echo $nbr_vadrouille++; ?></td> <td> <img src="../../images/pokemon/<?php echo $operation['id_pokadechi'];?>.png"</img> </td> <td> <?php echo $nom_objet;?> </td> <td> <?php echo ''.$operation['dateFR'].' à '.$operation['heureFR'].'';?> </td> </tr> <?php }
Ensuite, pour décrémenter, il suffit d'utiliser le signe - au lieu du signe +$nbr_vadrouille--;
encore faut-il savoir à combien tu dois initialiser ta variable au départ ....
Tu fais du mysqli ou du pdo ??
-
je dev en PDO.
Donc si je comprend bien, je dois compter le nombre d'entrée dans la table et ensuite je décrémente c'est ça ?
Et merci pour la simplification du code il est vrai que j'aurais pu faire plus simple.