[RESOLU] Ordre alphabétique sur une liste déroulante

Petit nouveau ! | 3 Messages

13 févr. 2013, 12:31

Bonjour, une de mes pages propose de sélectionner un secteur lié à une ville pour supprimer le secteur choisi.
Mon problème est que si pour la liste déroulante les villes apparaissent par ordre alphabétique, ce n'est pas le cas pour les secteurs qui apparaissent dans l'ordre défini dans la table de la base de données.
J'ai essayé avec l'argument ORDER BY mais cela ne fonctionne pas. Voici le bout de code en question :
<tr valign="baseline">
                            <td align="right" nowrap class="StyleEnTeteChamps"><div align="left" class="Style5">Ville:</div></td>
                            <td>
                              <select name="VILLE" class="StyleChampsObligatoire" id="VILLE" onChange="Remplir_Secteurs()">
                                <option value="-1">S&eacute;lectionner une ville</option>
                                <?php 
								mysql_select_db($database_BaseMySQLOTV, $BaseMySQLOTV);
								$DT_OTVVILLE = mysql_query("SELECT * FROM villes ORDER BY ville ASC", $BaseMySQLOTV) or die(mysql_error());
								$row_DT_OTVVILLE = mysql_fetch_assoc($DT_OTVVILLE);
								$totalRows_DT_OTVVILLE = mysql_num_rows($DT_OTVVILLE);
								
								if ($totalRows_DT_OTVVILLE > 0)
								{
									do
									{
										echo('<option value="'.$row_DT_OTVVILLE["ID"].'"');
										
										if (isset($_GET['VILLE']) && $row_DT_OTVVILLE["ID"] == $_GET['VILLE'])
												echo(' selected');
										
										echo('">'.$row_DT_OTVVILLE["VILLE"].'</option>');
									}
									while ($row_DT_OTVVILLE = mysql_fetch_assoc($DT_OTVVILLE));	
                                }
								?>
                                </select> 
                              <span class="StyleObligatoires">*</span> </td>
                          </tr>
                          <tr valign="baseline">
                            <td align="right" nowrap class="StyleEnTeteChamps"><div align="left">
                              <div align="left" class="Style5">Secteur:</div>
                            </div></td>
                            <td>
                              <div id="selectSECTEUR">
                                <select name="SECTEUR" class="StyleChampsObligatoire" id="SECTEUR">
                                <option value="-1">S&eacute;lectionner un secteur</option>
                                <?php
								if (isset($_GET['VILLE']))
								{
									mysql_select_db($database_BaseMySQLOTV, $BaseMySQLOTV);
									$query_Dt_CP = sprintf("SELECT * FROM secteurs WHERE VILLE = %s", GetSQLValueString("" . $_GET['VILLE'] . "%", "text"));
									$Dt_CP = mysql_query($query_Dt_CP, $BaseMySQLOTV) or die(mysql_error());
									$row_Dt_CP = mysql_fetch_assoc($Dt_CP);
									$totalRows_Dt_CP = mysql_num_rows($Dt_CP);
									
									if ($totalRows_Dt_CP > 0)
									{
										do
										{
											echo('<option value="'.$row_Dt_CP['ID'].'"');
											
											if (isset($_GET['SECTEUR']))
											{
												if ($_GET['SECTEUR'] == $row_Dt_CP['ID'])
													echo(' selected');
											}									
											
											echo('>'.$row_Dt_CP['SECTEUR'].'</option>');
										}
										while ($row_Dt_CP = mysql_fetch_assoc($Dt_CP));
									}
									mysql_free_result($Dt_CP);						  
								}
							  ?>
                                </select>
                                <span class="StyleObligatoires">*</span></div>                          </td>
                          </tr>
                          <tr valign="baseline">
                            <td align="right" nowrap class="StyleObligatoires"><div align="left">* champs obligatoires</div></td>
                            <td>&nbsp;</td>
                          </tr>
                          <tr valign="baseline">
                            <td height="46" align="right" nowrap>&nbsp;</td>
                            <td><input name="BtnSupprimerOTV" type="submit" class="StyleBouton" id="BtnSupprimerOTV" value="Supprimer le secteur"></td>

Eléphant du PHP | 267 Messages

13 févr. 2013, 13:02

salut,

il faut que tu remettes un ORDER BY dans ta 2ème requete

@+
dix2

Petit nouveau ! | 3 Messages

13 févr. 2013, 13:55

C'est ce que j'ai fait à la base mais cela ne fonctionne pas :
$query_Dt_CP = sprintf("SELECT * FROM secteurs WHERE VILLE = %s ORDER BY SECTEUR", GetSQLValueString("" . $_GET['VILLE'] . "%", "text"));

Petit nouveau ! | 3 Messages

15 févr. 2013, 19:04

Problème résolu. Dans mon script, une fonction Java appelait une autre page PHP. C'est dans cette dernière que je devais ajouter mon ORDER BY.