En r�ponse � Klaus <[EMAIL PROTECTED]>: > Salut, > > je voudrais re�crire un annuaire p�dagogique (katalogdeutsch.free.fr) en > > php-MySQL. Il y a une 50aine de pages, chacune avec une liste de liens > comment�s. Il y a une page par sous-cat�gorie, donc une page > musique.html, > cin�.html etc etc. > > J'ai bcp de cat�gories et sous cat�gories, par ex: > culture > musique - th��tre - cin� - etc > > civilisation > histoire - actualit� - politique - etc. > > Est-ce que dois cr�er une seule base de donn�es et une 50aine de tables > pour > chacune des sous-cat�gories ou est-ce que je dois cr�er une base pour > chaque > cat�gorie (culture, civilisation etc) ? La 1�re solution me para�t bien > + > pratique, mais comme je fais �a pour la 1�re fois... Si je comprends bien la question, la 1ere solution est presque aussi mauvaise que la seconde. Il faut faire 2 tables : TABLE_CATEGORIE CATE_ID INTEGER NOT NULL CATE_PARENT INTEGER CATE_NAME VARCHAR TABLE_LIEN LIEN_ID INTEGER NOT NULL CATE_ID INTEGER NOT NULL LIEN_URL VARCHAR LIEN_LIBELLE VARCHAR Le contenu des tables va ressembler � cela : TABLE_CATEGORIE : ID PARENT NAME 1 null Culture 2 1 Musique 3 1 Theatre 4 1 Cin� 5 null Civilisation 6 5 Histoire 7 5 Actualit� 8 5 Politique Table_LIEN ID CATE_ID URL LIBELLE 1 4 www.allocine.fr commander ses billets de cin�ma 2 5 www.afp.fr Les d�p�ches AFP etc.... Pour avoir la liste des cat�gories disponbles : SELECT CATE_ID, CATE_NAME FROM TABLE_CATEGORIE WHERE CATE_PARENT IS NULL Pour avoir la liste des sous cat�gories d'une cat�gorie dont l'ID est :identifiant : SELECT CATE_ID, CATE_NAME FROM TABLE_CATEGORIE WHERE CATE_PARENT= :identifiant Pour voir la liste des liens d'une sous-cat�gorie dont l'ID est :identifiant : SELECT LIEN_URL, LIEN_LIBELLE FROM TABLE_LIEN WHERE CATE_ID = :identifiant Plus fort : pour avoir la liste des liens de toutes les sous-cat�gories d'une cat�gorie dont l'ID est :identifiant : SELECT A.LIEN_URL, A.LIEN_LIBELLE FROM TABLE_LIEN A, TABLE_CATEGORIE B WHERE B.PARENT = :identifiant AND A.CATE_ID = B.CATE_ID J'ai r�pondu � la question ? -- H.Lefebvre [EMAIL PROTECTED] LINUX : Ne jetez plus votre argent par les fen�tres !
