PHP mettre une condition dans une boucle while

jibtothenight Messages postés 22 Date d'inscription jeudi 13 mars 2008 Statut Membre Dernière intervention 13 octobre 2008 - 22 mai 2008 à 11:59
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 - 22 mai 2008 à 13:17
Bojour,

je suis débutant en php et je n'arrive pas à intégrer ma condition dans ma boucle while.
L'execution du fichier me met une erreur : syntax error, unexpected T_ELSEIF .

Voici mon code si quelqu'un pouvait m'aider s'il vous plait :

<?php
while($donnees = mysql_fetch_array($query)) // on fait un while pour afficher la liste des fonctions trouvées, ainsi que l'id qui permettra de faire le lien vers la page de la fonction
{


?>
<?php
if($donnees['id_famille']<=18){?>
[javascript:popup('fiche_produit_ansmann.php?id=<?php echo $donnees['id']; ?>','popup_1'); <?php
 echo $donnees['produit'];?>

]}
<?php
elseif($donnees['id_famille']>18&&<25){?>
[bw.php <?php
 echo $donnees['produit'];?>

]}
<?php
elseif($donnees['id_famille']>24&&<30){?>
[javascript:popup('fiche_produit_gc.php?id=<?php echo $donnees['id']; ?>','popup_1'); <?php
 echo $donnees['produit'];?>

]}
<?php
elseif($donnees['id_famille']==30){?>
[javascript:popup('fiche_produit_joby.php?id=<?php echo $donnees['id']; ?>','popup_1'); <?php
 echo $donnees['produit'];?>

]}
<?php
elseif($donnees['id_famille']>30&&<62){?>
[javascript:popup('fiche_produit_lowepro.php?id=<?php echo $donnees['id']; ?>','popup_1'); <?php
 echo $donnees['produit'];?>

]}
<?php
elseif($donnees['id_famille']>61&&<67){?>
[javascript:popup('fiche_produit_steiner.php?id=<?php echo $donnees['id']; ?>','popup_1'); <?php
 echo $donnees['produit'];?>

]}
<?php
else{?>
[javascript:popup('fiche_produit_sc.php?id=<?php echo $donnees['id']; ?>','popup_1'); <?php
 echo $donnees['produit'];?>

]}




<?php echo $donnees['reference']; ?>

<?php
} // fin de la boucle
?>




<?php
} // fini d'afficher les résultats ! Maintenant, nous allons afficher l'éventuelle erreur en cas d'échec de recherche et le formulaire.
else
{ // de nouveau, un peu de HTML
?>

Pas de résultats

Nous n'avons trouvé aucun résultats pour votre requête "

1 réponse

malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
22 mai 2008 à 13:17
hello,

else ne suit pas un while.
else suit un if ou un elseif.
Bref :
if(mysql_num_rows($query) === 0) {
// pas de résultat
} else {
while(...) {
}
}
0
Rejoignez-nous