Je souhaiterai lui ajouter un champ Père et un champ fils. De cette façon, je pourrais créer une arborescence qui permettra de lier les rubriques entre elles via une relation de filiation.
Mais voilà, j'ai bien peur que cela ralentisse le temps d'execution. Pourquoi ? Parceque si je crée une arborescence, je devrais afficher les entêtes filles de l'entête consultée (1 requête), l'entête mère de l'entête affichée (1 requête) voir, toute l'arborescence qui mène à l'entête consultée (ex: Accueil>Articles>Articles des membres>Articles de Gérard)
Et je serais obligé de procéder de deux manières (si vous en connaissez une autre, hésitez pas !!!) :
- La manière forte :
SELECT * FROM Entete WHERE Lang="$Lang"
Puis un tri via tableaux... Alors si j'ai 100 entêtes, v'là le dégât...
La manière douce, mais pleine de requêtes...
$IDEntete="ID_de_l'entête_courante";
while(mysql_num_rows($Requete=mysql_query('SELECT Description, Titre, ID, Rub WHERE Parent="' . $IDEntete . '"'))
{
echo '<a href="?Rub=' . mysql_result($Requete,0,'Rub') ... >...</a>';
}
Plus un :
while($Row=mysql_num_rows(mysql_query('SELECT * FROM Entete WHERE Fils='$IDEntete)))...
Dans les deux cas, j'ai une 20aine de requêtes à effectuer et ça me semble tout de même un peu pompeux en ressources... Des solutions ou tous les système ayant une arborescence pompe les ressources d'un serveur ????