Liste de A=>Z ou Z=>A sur une requete Mysql ?

Liste de A=>Z ou Z=>A sur une requete Mysql ? - PHP - Programmation

Marsh Posté le 17-06-2004 à 19:20:47    

Salut a tous j'ais fait un petit module de gestion de contacts avec affichage du nom prenom.....
J'ai une liste de plusieur centaine de contacts et je souhaite pouvoir faire un trie par ordre croissan ou decroissan en cliquant sur une image + ou - a conté de chaque champ nom prenom ....
Probleme je n'y arrive pas "please help"
Voici le detail de la partie concerné

Code :
  1. <TABLE cellSpacing=1 cellPadding=2 border=0 width="100%"><TBODY>
  2.                 <TR bgColor=#ffffff>
  3.                      <TD>
  4.         <table cellSpacing=1 cellPadding=2 width="100%" border=0>
  5.      <tr>
  6.   <?php
  7.           switch ($listing) {
  8.               case "id-asc":
  9.               $order = "refContact";
  10.               break;
  11.               case "firstname":
  12.               $order = "prenom";
  13.               break;
  14.               case "firstname-desc":
  15.               $order = "prenom DESC";
  16.               break;
  17.               case "lastname":
  18.               $order = "nom";
  19.               break;
  20.               case "lastname-desc":
  21.               $order = "nom DESC";
  22.               break;
  23.               default:
  24.               $order = "refContact DESC";
  25.           }
  26.           ?>
  27.              <td align=center class=entetebleue><a href="<?php echo "$PHP_SELF?listing=lastname"; ?>"><img src="images/ic_up.gif" border="0" alt=" Trier les noms --&raquo; A-B-C.." title=" Trier les noms --&raquo; A-B-C.."></a>&nbsp; Nom &nbsp;<a href="<?php echo "$PHP_SELF?listing=lastname-desc"; ?>"><img src="images/ic_down.gif" border="0" alt=" Trier les noms --&raquo; Z-X-Y.." title=" Trier les noms --&raquo; Z-X-Y.."></a></td>
  28.              <td align=center class=entetebleue><a href="<?php echo "$PHP_SELF?listing=firstname"; ?>"><img src="images/ic_up.gif" border="0" alt=" Trier les noms --&raquo; A-B-C.." title=" Trier les noms --&raquo; A-B-C.."></a>&nbsp; Prenom &nbsp;<a href="<?php echo "$PHP_SELF?listing=firstname-desc"; ?>"><img src="images/ic_down.gif" border="0" alt=" Trier les noms --&raquo; Z-X-Y.." title=" Trier les noms --&raquo; Z-X-Y.."></a></td>
  29.            
  30.              <td align=center class=entetebleue>Téléphone Mobile </td>
  31.              <td align=left class=entetebleue>Société</td>
  32.              <td align=center colspan=2 class=entetebleue>Action</td>
  33.      </tr>
  34. <?
  35. $ligne = 1;
  36. $result = mysql_query("select refContact, refSociete, nom, prenom, titre, telMobile, telBureau, telStandard, fax, email from tbl_contacts order by $order" );
  37. while ($row = mysql_fetch_object($result)) {
  38.     $refSociete = $row->refSociete;
  39.     $refContact = $row->refContact;
  40.     $nom = $row->nom;
  41.     $prenom = $row->prenom;
  42.     $telMobile = $row->telMobile;
  43.    
  44.     ?>
  45.           <tr>
  46.                 <td class=body align=center bgcolor="<? if ($ligne > 0) echo "ffffff"; else echo "dddddd"; ?>">
  47.                   <a href="afficher_contacts.php?refContact=<? echo $refContact ?>&nom=<? echo $nom ?>"><? echo $nom ?></a>
  48.                </td>
  49.                <td class=body align=center bgcolor="<? if ($ligne > 0) echo "ffffff"; else echo "dddddd"; ?>">
  50.                   <? echo $prenom ?>
  51.                </td>
  52.                <td class=body align=center bgcolor="<? if ($ligne > 0) echo "ffffff"; else echo "dddddd"; ?>">
  53.                   <? echo $telMobile ?>
  54.                </td>
  55.                <td class=body align=left bgcolor="<? if ($ligne > 0) echo "ffffff"; else echo "dddddd"; ?>">
  56.                   <? echo getNomSociete($refSociete) ?>
  57.                </td>
  58.                 <td class=body align=center bgcolor="<? if ($ligne > 0) echo "ffffff"; else echo "dddddd"; ?>">
  59.                        [<a href="modification_contacts.php?refContact=<? echo $refContact ?>&nom=<? echo $nom ?>">Modifier</a>]&nbsp;[<a href="contactsDel.php?refContact=<? echo $refContact ?>&nom=<? echo $nom ?>" onClick="return conf();">Supprimer</a>]
  60.                             </td>
  61.           </tr>
  62.     <?
  63.     $ligne = -$ligne;
  64. }
  65. mysql_free_result($result);
  66. ?>
  67.          </table>
  68.        </td>
  69.     </tr>
  70.         </TBODY></table>


 
 
 
Et Voici le code source de ma page d'affichage de la liste des contacts
 

Code :
  1. <?
  2. include "globale.inc.php";
  3. include "fonction.inc.php";
  4. $conn = connecte();
  5. ?>
  6. <html>
  7. <head>
  8. <link href="stelsheet.css" rel="stylesheet" type="text/css">
  9. <script language="JavaScript">
  10. <!--
  11. function conf() {
  12.     return (confirm("Etes-vous sur de vouloir supprimer ce Contact ?" ));
  13. }
  14. //-->
  15. </script>
  16. </head>
  17. <body class=body>
  18. <table cellpadding=0 border=0 width=100% valign="top">
  19.    <tr height="100%">
  20.       <td valign="top" class="small" width=150>
  21. <? include "menu.html" ?>
  22.       </td>
  23.       <td  valign="top">
  24.         <TABLE cellSpacing=0 cellPadding=0 border=0 width="100%" align="center" bgColor=#bbbbbb >
  25.            <tr>
  26.               <td>
  27.                
  28.                
  29.                  <table cellSpacing=0 cellPadding=3 width="100%" border=0>
  30.                     <tr class="enteteblanc" align="center">
  31.                        <td width="30" align="left" valign="top"><img src="images/contact.jpg" border="0" width="30" height="30"></td>
  32.                        <td width="100%" align="Center" valign="middle" nowrap >.:: liste de tous les Contacts ::. </td>
  33.                        <td width="247" align="right" valign="middle" nowrap class="small">Selection Rapide :
  34.                        <?
  35.                  // Récupération des informations triées par ordre alphabétique
  36.                  $menu = "SELECT refContact, nom FROM tbl_contacts ORDER by nom";
  37.                  $ReqLog = mysql_query($menu);
  38.                       
  39.                  echo '<select size=1 name="refSociete" class="textfield" onChange="if (this.selectedIndex!=0) window.location.href = this.options[this.selectedIndex].value;">'."\n";
  40.                  echo '<option value="0">Votre choix...</option>'."\n";
  41.                    while ($resultat = mysql_fetch_row($ReqLog)) {
  42.                  echo '<option value="afficher_contacts.php?refContact='.$resultat[0].'">'.$resultat[1];
  43.                   echo '</option>'."\n";
  44.                   }
  45.                  echo '</select>'."\n";
  46.                  ?>                     
  47.                      
  48.                        </td>
  49.                    
  50.                     </tr>
  51.                     <tr class="enteteblanc">
  52.                        <td colspan="3">
  53.                          <TABLE cellSpacing=0 cellPadding=0 border=0 width="100%"><TBODY>
  54.            <TR>
  55.           <TD bgColor=#3e4e6b>
  56.                <TABLE cellSpacing=1 cellPadding=2 border=0 width="100%"><TBODY>
  57.                 <TR bgColor=#ffffff>
  58.                      <TD>
  59.         <table cellSpacing=1 cellPadding=2 width="100%" border=0>
  60.      <tr>
  61.   <?php
  62.           switch ($listing) {
  63.               case "id-asc":
  64.               $order = "refContact";
  65.               break;
  66.               case "firstname":
  67.               $order = "prenom";
  68.               break;
  69.               case "firstname-desc":
  70.               $order = "prenom DESC";
  71.               break;
  72.               case "lastname":
  73.               $order = "nom";
  74.               break;
  75.               case "lastname-desc":
  76.               $order = "nom DESC";
  77.               break;
  78.               default:
  79.               $order = "refContact DESC";
  80.           }
  81.           ?>
  82.              <td align=center class=entetebleue><a href="<?php echo "$PHP_SELF?listing=lastname"; ?>"><img src="images/ic_up.gif" border="0" alt=" Trier les noms --&raquo; A-B-C.." title=" Trier les noms --&raquo; A-B-C.."></a>&nbsp; Nom &nbsp;<a href="<?php echo "$PHP_SELF?listing=lastname-desc"; ?>"><img src="images/ic_down.gif" border="0" alt=" Trier les noms --&raquo; Z-X-Y.." title=" Trier les noms --&raquo; Z-X-Y.."></a></td>
  83.              <td align=center class=entetebleue><a href="<?php echo "$PHP_SELF?listing=firstname"; ?>"><img src="images/ic_up.gif" border="0" alt=" Trier les noms --&raquo; A-B-C.." title=" Trier les noms --&raquo; A-B-C.."></a>&nbsp; Prenom &nbsp;<a href="<?php echo "$PHP_SELF?listing=firstname-desc"; ?>"><img src="images/ic_down.gif" border="0" alt=" Trier les noms --&raquo; Z-X-Y.." title=" Trier les noms --&raquo; Z-X-Y.."></a></td>
  84.            
  85.              <td align=center class=entetebleue>Téléphone Mobile </td>
  86.              <td align=left class=entetebleue>Société</td>
  87.              <td align=center colspan=2 class=entetebleue>Action</td>
  88.      </tr>
  89. <?
  90. $ligne = 1;
  91. $result = mysql_query("select refContact, refSociete, nom, prenom, titre, telMobile, telBureau, telStandard, fax, email from tbl_contacts order by $order" );
  92. while ($row = mysql_fetch_object($result)) {
  93.     $refSociete = $row->refSociete;
  94.     $refContact = $row->refContact;
  95.     $nom = $row->nom;
  96.     $prenom = $row->prenom;
  97.     $telMobile = $row->telMobile;
  98.    
  99.     ?>
  100.           <tr>
  101.                 <td class=body align=center bgcolor="<? if ($ligne > 0) echo "ffffff"; else echo "dddddd"; ?>">
  102.                   <a href="afficher_contacts.php?refContact=<? echo $refContact ?>&nom=<? echo $nom ?>"><? echo $nom ?></a>
  103.                </td>
  104.                <td class=body align=center bgcolor="<? if ($ligne > 0) echo "ffffff"; else echo "dddddd"; ?>">
  105.                   <? echo $prenom ?>
  106.                </td>
  107.                <td class=body align=center bgcolor="<? if ($ligne > 0) echo "ffffff"; else echo "dddddd"; ?>">
  108.                   <? echo $telMobile ?>
  109.                </td>
  110.                <td class=body align=left bgcolor="<? if ($ligne > 0) echo "ffffff"; else echo "dddddd"; ?>">
  111.                   <? echo getNomSociete($refSociete) ?>
  112.                </td>
  113.                 <td class=body align=center bgcolor="<? if ($ligne > 0) echo "ffffff"; else echo "dddddd"; ?>">
  114.                        [<a href="modification_contacts.php?refContact=<? echo $refContact ?>&nom=<? echo $nom ?>">Modifier</a>]&nbsp;[<a href="contactsDel.php?refContact=<? echo $refContact ?>&nom=<? echo $nom ?>" onClick="return conf();">Supprimer</a>]
  115.                             </td>
  116.           </tr>
  117.     <?
  118.     $ligne = -$ligne;
  119. }
  120. mysql_free_result($result);
  121. ?>
  122.          </table>
  123.        </td>
  124.     </tr>
  125.         </TBODY></table>
  126.     </td>
  127.       </tr>
  128.    </TBODY></table>
  129.        </td>
  130.      </tr>
  131.    </table>
  132.                  </td>
  133.                </tr>
  134.               </TBODY></table>
  135.      </td>
  136.   </tr>
  137.   <tr>
  138.     <td align=center>&nbsp;
  139.     </td> 
  140.     <td align=center class=body><br><br>[<a href="creation_contacts.php">Créer un nouveau Contact</a>]
  141.             </td>
  142.   </tr>
  143.         </table>
  144.      </td>
  145.    </tr>
  146. </table>
  147.        
  148. <?
  149. deconnecte($conn);
  150. ?>
  151. </body>
  152. </html>


 

Reply

Marsh Posté le 17-06-2004 à 19:20:47   

Reply

Marsh Posté le 17-06-2004 à 19:25:39    

bah dans ta requete y aura ASC ou DESC suivant la valeur qu'il il y a dans la variable order (par exemple)


---------------
Saint Seiya  || La Livebox || Europe, débats, réflexions
Reply

Sujets relatifs:

Leave a Replay

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