ordonner des enregistrements

ordonner des enregistrements - PHP - Programmation

Marsh Posté le 15-10-2007 à 13:54:42    

Bonjour,
je dois ordonner certains enregistrements  
d'abord ceux où $affichage_de_la_promo_ville[$nb_promos_affiche]sont differents de zero puis ceux qui sont egales à zero.
la seul solution que j'ai trouvé C de boucler deux fois
 
existe-il une solution plus simple (sans passer par le ORDER BY en SQL)
 
 
 

Code :
  1. <?php
  2. for($nb_promos_affiche=0;$nb_promos_affiche<sizeof($affichage_de_la_promo_id);$nb_promos_affiche++){
  3. if($affichage_de_la_promo_ville[$nb_promos_affiche]!='0'){
  4. haut_annonce();
  5. echo $affichage_de_la_promo_ville[$nb_promos_affiche];
  6. bas_annonce();
  7. }
  8. }
  9. for($nb_promos_affiche=0;$nb_promos_affiche<sizeof($affichage_de_la_promo_id);$nb_promos_affiche++){
  10. if($affichage_de_la_promo_ville[$nb_promos_affiche]=='0'){
  11. affichage_annonce();
  12. }
  13. }
  14. ?>


 
 
 
 
merci de votre aide


Message édité par est_L le 15-10-2007 à 13:56:38
Reply

Marsh Posté le 15-10-2007 à 13:54:42   

Reply

Marsh Posté le 15-10-2007 à 15:23:11    

Tu boucles une seule fois en enregistrant dans des variables différentes les lignes ou la variable est égale à zero et celle où la variable est différent de zéro. Ensuite il ne te reste plus qu'a afficher une variable derriere l'autre.
 
Par contre, tu vas devoir modifier les fonctions haut_annonce(), bas_annonce() et affichage_annonce() pour qu'elle renvoie une variable au lieu de faire un echo (enfin si j'ai bien compris ce que faisait ces fonctions.
 
En clair ça devrait donner un truc du genre,
 

Code :
  1. for($nb_promos_affiche=0;$nb_promos_affiche<sizeof($affichage_de_la_promo_id);$nb_promos_affiche++)
  2. {
  3.    if($affichage_de_la_promo_ville[$nb_promos_affiche]!='0')
  4.      {
  5.        $var1 .= haut_annonce();
  6.        $var1 .= $affichage_de_la_promo_ville[$nb_promos_affiche];
  7.        $var1 .= bas_annonce();
  8.      }
  9.    else
  10.        $var2 .= affichage_annonce();
  11. }
  12. echo $var1.$var2;


 
Si cette solution ne te convient pas tu peux aussi regarder du côté des fonctions qui trie les tableaux. Pour mettre les les valeur = 0 à la fin du tableau, ce qui te permettrait dans ce cas là de ne pas avoir à stocker le résultat dans des variables.

Reply

Marsh Posté le 17-10-2007 à 17:30:46    

Bon je suppose que ma solution fonctionne vu que j'ai pas de nouvelles ^_^


Message édité par FlyPhp le 17-10-2007 à 17:31:48
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed