par
thierry » 10 mai 2005, 15:59
salut,
dis moi si je me trompe:
ce que j'ai compris de ton problème c'est que tu devais exploiter le jeux de résultats d'une requête plusieurs fois.
ensuite tu bloque sur le fait qu'une fois que tu as exploité un jeux de résultat à laide d'une boucle sur un mysql_fertch_array() tu ne peut plus revenir en arrière.
donc tu refait la même requête afin de "recharger" ton jeux de résultats et pouvoir l'exploiter à nouveau.
c'est pour ça que je t'ai conseillé d'utiliser mysql_result().
en gros voila comment on s'en sert.
comme tu va exécuter plusieurs fois un code similaire, le mieux est de créer une fonction (c'est plus propre, ça facilite la lecture du code et sa maintenace

)
function gere_liste($nom_select,$match_mot_clef,$data,$nb_row)
{
echo('<select name="' . $nom_select . '">'
.'<option></option');
for($i=0;$i<$nb_row;$i++)
{
echo('<option value="' . mysql_result($data,$i,0) . '"');
if(mysql_result($data,$i,0)==$match_mot_clef) echo(' selected ');
echo('>' . mysql_result($data,$i,1) . '</option>');
}
echo('</select>');
}
ensuite en dehors de la fonction:
$result11=mysql_query("SELECT * from MOTCLE order by libMotCle");
$nombre_lignes=mysql_num_rows($result11);
ensuite à insérer au bon endroit dans ton code html:
//en reprenant l'exemple de ta première boucle
<?php gere_liste('cleMotCle2',$cleMot2,$result11,$nombre_lignes); ?>
j'ai pas tester le code mais si tu as un problème n'hésite pas.
thierry