probleme de boucle while - PHP - Programmation
Marsh Posté le 18-11-2006 à 10:41:19
$rqt_formation = mysql_query( " SELECT formation_intitule
FROM formation, acquerir
where acquerir_formation_num = formation_num
and acquerir_personne_num = ".$_SESSION['num']."
" );
if (mysql_num_rows($formation)> 0 )
{
while($formation = mysql_fetch_array($rqt_formation))
{
echo $formation['formation_intitule'];
echo "<br/>";
}
}
else
echo "Pas de Formation";
Et comme ca ca donne quoi?
Marsh Posté le 16-11-2006 à 20:23:19
Moui, il y a un problème de logique dans ton code, parce que tel qu'il est écrit, ton premier enregistrement (pour autant qu'il existe) ne sera jamais affiché, donc soit tu fais ton $formation = mysql_fetch_array($rqt_formation) à la fin de ta boucle et pas au début, soit tu utilises mysql_num_rows pour connaitre le nombre de résultats de ta requête pour ton if.
Faut juste comprendre que lorsque php croise un mysql_fetch_array il lit l'enregistrement courant et passe à l'enregistrement suivant, ce qui fait commencer ta boucle au deuxième