par
Henri » 30 juin 2006, 14:04
1) Utilise mysql_fetch_assoc : tu récupèreras un tableau avec comme indice les noms de tes colonnes au lieu d'un simple numéro.
2) Tu n'as pas besoin de transférer des données dans plusieurs autres tableaux, mais dans un seul
while( $rows = mysql_fetch_assoc($result)){
$appel[] = $rows;
}
3) ta liste déroulante finale doit être de la forme
Code : Tout sélectionner
<option value="ida1">ida1</option>
<option value="ida2">ida2</option>
<option value="ida3">ida3</option>
<option value="ida4">ida4</option>
il faut donc que ta boucle prenne en un seul coup l'option, sa value et le libellé. Il ne faut pas qu'il y ait deux boucles qui de plus sont dans la valeur, puis dans le libellé Si tu jettes un coup d'oeil au html généré par ton code, ça doit ressembler à ça.
donc
<select size="1" name="numero">
<?php
for ($i=0; $i<count($appel); $i++ {
echo '<option value="'.$appel[$i]["ida"].'">'.$appel[$i]["ida"]."</option>\n";
}
?>
</select>
Conseils :
1) si tu n'as besoin que de ida fait select ida from ... au lieu de select * from ... tu amélioreras les performances du serveur et de ton script (moins de données inutiles chargées).
2) dans ton code, pense à rajouter des \n : la lecture du code HTML généré en sera facilitée. Cette lecture du code HTML te permettra de voir ce qui a été généré par rapport à ce que tu voulais que ça génère.
1) Utilise mysql_fetch_assoc : tu récupèreras un tableau avec comme indice les noms de tes colonnes au lieu d'un simple numéro.
2) Tu n'as pas besoin de transférer des données dans plusieurs autres tableaux, mais dans un seul
[php]
while( $rows = mysql_fetch_assoc($result)){
$appel[] = $rows;
}
[/php]
3) ta liste déroulante finale doit être de la forme
[code]
<option value="ida1">ida1</option>
<option value="ida2">ida2</option>
<option value="ida3">ida3</option>
<option value="ida4">ida4</option>
[/code]
il faut donc que ta boucle prenne en un seul coup l'option, sa value et le libellé. Il ne faut pas qu'il y ait deux boucles qui de plus sont dans la valeur, puis dans le libellé Si tu jettes un coup d'oeil au html généré par ton code, ça doit ressembler à ça.
[code]
<option value="ida1ida2ida3ida4">ida1ida2ida3ida4</option>
[/code]
donc
[php]
<select size="1" name="numero">
<?php
for ($i=0; $i<count($appel); $i++ {
echo '<option value="'.$appel[$i]["ida"].'">'.$appel[$i]["ida"]."</option>\n";
}
?>
</select>
[/php]
Conseils :
1) si tu n'as besoin que de ida fait select ida from ... au lieu de select * from ... tu amélioreras les performances du serveur et de ton script (moins de données inutiles chargées).
2) dans ton code, pense à rajouter des \n : la lecture du code HTML généré en sera facilitée. Cette lecture du code HTML te permettra de voir ce qui a été généré par rapport à ce que tu voulais que ça génère.