XavBer83
Messages postés3Date d'inscriptionlundi 19 novembre 2007StatutMembreDernière intervention20 novembre 2007
-
19 nov. 2007 à 23:33
XavBer83
Messages postés3Date d'inscriptionlundi 19 novembre 2007StatutMembreDernière intervention20 novembre 2007
-
20 nov. 2007 à 09:53
Hello tous !
j'ai un petit soucis qui va vous faire sourire... mais pour moi c'est super compliqué, héhé !
Voila j'ai des catégories adr_categories : id - parent - nom
et j'ai des établissements adr_etablissements : id - categorie - ...
mon soucis c'est que le niveau de sous catégories est "illimité" avec
mon systeme.. vu qu'on peut construire une arborescence via les id et
les parents.
Maintenant j'aimerais pouvoir faire une requete mysql qui me permette
de compter pour chaque catégorie combien il y a d'établissements
directement dans la catégories (ca c pas un soucis) mais aussi dans ses
sous catégories (la je coince...). Le but étant de pouvoir afficher
entre parenthèse le nombre d'établissement disponibles et que si il n'y
a pas d'établissement... je n'affiche pas ma catégorie...
Est-ce que quelqu'un a une idée comment je peux faire ca ?
De la doc ? quelques choses pour que je puisse avancer sur mon petit projet :-) ?
Je vous remercie beaucoup d'avance pour votre aide
neigedhiver
Messages postés2480Date d'inscriptionjeudi 30 novembre 2006StatutMembreDernière intervention14 janvier 201118 20 nov. 2007 à 00:18
Salut,
Le plus simple est d'avoir deux champs dans ta table :
- id_categorie
- id_parent
L'id de la catégorie te permet de savoir dans quelle grande catégorie se situe un enregistrement.
L'id parent te permet de savoir quelle est la catégorie parente de l'enregistrement.
C'est plutôt facile à mettre en place, et pas facile de se tromper...
Quand tu insères une catégorie fille d'une autre, il te suffit de lui donner le même id_parent que sa mère. Sauf si la mère n'a pas de mère elle même, alors l'id parent est l'id de cet enregistrement. Euh... C'est clair... ?
XavBer83
Messages postés3Date d'inscriptionlundi 19 novembre 2007StatutMembreDernière intervention20 novembre 2007 20 nov. 2007 à 01:45
Mais j'ai deja dans ma table catégorie ce deux champs : adr_categories : id - parent - nom
Moi je cherche maintenant a résolver ca en php pour afficher le nombre d'établissement il y a pas catégories pour avoir un affichage du type :
- restaurants (24)
- asiatique (20)
- fast food (4)
lesdis
Messages postés403Date d'inscriptionmercredi 19 avril 2006StatutMembreDernière intervention 7 août 2020 20 nov. 2007 à 09:38
Bonjour,
Si la colonne categorie de la table adr_etablissement correspond à l'id de la table adr_categorie tu peux resoudre ton probleme par cet ordre SQL :
SELECT COUNT(adr_etablissement.id),adr_categorie.nom FROM adr_etablissement,adr_categorie WHERE adr_etablissement.categorie = adr_categorie.id GROUP BY adr_categorie.id
Tu récupéreras pour chaque ligne le nom de la categorie et le nombre d'établissement correspondant.
XavBer83
Messages postés3Date d'inscriptionlundi 19 novembre 2007StatutMembreDernière intervention20 novembre 2007 20 nov. 2007 à 09:53
Hello merci pr ta réponse.
Avec ton exemple je trouve le nombre d'établissement directement dans la catégorie.
Mais compte-il aussi dans les sous catégories ?
Car l'idee est que si dans restaurants, il doit afficher l'addition des etablissement directement dans restaurants, et dans les sous catégories , sous sous catégories, etc....