Aller au contenu

Catégories & sous-catégories


nicobillou

Sujets conseillés

Bonjour,

Je ne suis pas un crack de PHP et je suis devant un problèmes dont je ne trouve la solution;

Je m'explique :

J'ai deux tables, une catégorie, l'autre sous catégorie. Je souhaiterais afficher celles ci en arborescence :

Catégorie 1

Sous catégorie 1

Sous catégorie 2

Catégorie 2

...

Ces deux tables sont bien reliées entre elles via id_catégorie

tbl_Catégorie tbl_souscatégorie

---------------- ---------------- ----

id_catégorie__ id_souscategorie

titre \-------id_catégorie

titre_souscategorie

(le MCD passe trés mal sur ce forum :))

Donc je fait ma requête en jointure et comme je pensait ça s'affiche comme cela:

catégorie 1 souscategorie1

catégorie1 souscategorie2

Dois je faire un code en php pour pouvoir retrouver des données classées ainsi :

Catégorie 1

Sous catégorie 1

Sous catégorie 2

Catégorie 2

Ou travailler ma requête SQL ?

Pouvez vous m'indiquer comment procéder ?

MeRcI !

Modifié par nicobillou
Lien vers le commentaire
Partager sur d’autres sites

Je ne suis pas sûr d'avoir compris comment étaient organisées tes tables, mais si il y a un id_categorie dans sous_categorie, voilà (en gros) ce que tu pourrais faire...

Je n'ai pas testé, donc je ne suis pas sûr que ça marche, mais l'idée est là...

$sql="SELECT nom_categorie, nom_sous_categorie FROM categorie, sous_categorie WHERE categorie.id_categorie=sous_categorie.id_categorie";
$requete=mysql_query($sql);

for ($i=0;$i<mysql_num_rows($requete);$i++)
{
if ($i==0)
{
echo mysql_result($requete, $i, nom_categorie)."<br>";
}
else
{
if (mysql_result($requete, $i, nom_categorie)!=mysql_result($requete, ($i-1), nom_categorie))
{
echo mysql_result($requete, $i, nom_categorie)."<br>";
}
}
echo mysql_result($requete, $i, nom_sous_categorie)."<br>";
}

Sinon, tu peux aussi faire deux boucles imbriquées. Dans la première, tu fais défiler les catégories. Dans la seconde, à l'intérieur de la première, tu fais défiler les sous-catégories.

Modifié par aspeum
Lien vers le commentaire
Partager sur d’autres sites

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...