Page 1 sur 1

Meilleur solution pour remplir listes ?

Posté : 02 déc. 2005, 09:54
par psaikopat
Bonjour a tous,

Voila je me pose une question :

Comment remplir une liste déroulante d'informations contenu dans une base de donnée ?

Alors voici le code que je fesais :
<select name="select">
    <?
					if (isset($result2)) {@mysql_free_result($result2);}
					$query2 = "SELECT Nomsecteur FROM imprime.secteur ORDER BY Idsecteur ASC";
					$result2 = mysql_query($query2);
					while($champ = @mysql_fetch_array($result2)){
					$secteur=$champ[1];
				?>
	  			<option value="<? echo $secteur; ?>"><? echo $secteur; ?></option>
	  			<? } ?>
	</select>

Est-ce la bonne solution ? La meilleure ?
Comment etre sur que ma liste se remplisse ? (car de tps en tps elle se remplit pas ! :shock:)
J'aimerais avoir une solution fiable et qui fonctionne a tout les coups !

Merci d'avance !

Posté : 02 déc. 2005, 09:59
par Cyrano
On peut simplifier sur un détail mais dans l'ensemble c'est la bonne méthode:
<select name="select">
<?
    if (isset($result2))
    {
        mysql_free_result($result2);
    }
    $query2 = "SELECT Nomsecteur FROM imprime.secteur ORDER BY Idsecteur ASC";
    $result2 = mysql_query($query2);
    while($champ = mysql_fetch_assoc($result2))
    {
?>
  <option value="<? echo $champ['Nomsecteur']; ?>"><? echo $champ['Nomsecteur']; ?></option>
<?
    }
?>
</select>
Un autre détail : ne mets pas de "@" devant un nom de fonction PHP, ça masque les erreurs, une mauvaise habitude en développement.

Posté : 02 déc. 2005, 10:09
par psaikopat
Merci beaucoup :D

En ce qui concerne les erreurs, ça m'énervait de voir que mon code marchait pas alors avec des @ partoutu, bin ton code, il fonctionne ! ;)

Ok je les enlève ! ;)

Merci encore