Boucle while

Marca
Invité n'ayant pas de compte PHPfrance

10 déc. 2013, 16:35

Bonjour à tous,

j'ai un souci d'affichage pour une boucle while.

Je veux afficher les rubriques appartenant à la categorie 1 (j'en ai 7 au total dans ma table qui appartienne à cette categorie) avec ma 1ere boucle while.
Ma 2eme boucle permet d'afficher les sousRubriques de chaque Rubrique.

L'affichage des sous rubriques fonctionne très bien, elles s'affichent toute.

Le problème vient de ma première boucle, uniquement la première rubrique s'affiche.
<div id="navigation">
	<?php
		$query = $db->prepare("SELECT * FROM rubrique WHERE idCategorie = 1");
		$query->execute();
		while($rubrique = $query->fetch(PDO::FETCH_OBJ)){
		echo "
			<div class=\"menu\" id=\"menu\" onclick=\"afficheMenu(this)\">
				<a href=\"#\">{$rubrique->titreRubrique}</a>
			</div>
			<div id=\"sousmenu\" style=\"display:none\">";

				$query = $db->prepare("SELECT * FROM sousRubrique WHERE idRubrique = :id");
				$query->execute(array('id' => $rubrique->idRubrique));
				while($sousrubrique= $query->fetch(PDO::FETCH_OBJ))
					echo "		
				<div class=\"sousmenu\">
					href=\"#\">{$sousrubrique->titreSousRubrique}</a>
				</div>";
				}
			?>
			</div>
</div>
Quelqu'un voit-il où est mon erreur ?

Merci

Eléphanteau du PHP | 12 Messages

10 déc. 2013, 16:54

Tu utilises un framework ou un moteur de template ? car {$rubrique->titre_rubrique} m'a l'air d'une variable tpl

Marca
Invité n'ayant pas de compte PHPfrance

10 déc. 2013, 17:03

Oui mais c'est la bonne syntaxe, le problème ne vient pas de là.
L'erreur se situe ailleurs

Eléphanteau du PHP | 12 Messages

10 déc. 2013, 17:11

Mais les requêtes doivent se faire dans un fichier à part logiquement donc c'est déjà un problème en soit.