bonjour Benlahsen,
A vrai dire, j'ai un peu laissé tomber mes recherches, faute de temps. Et vu ce que Bul3 a raconté à propos de ma demande,

ça m'a fort refroidi.
Par contre j'ai trouvé un webbiste qui a fabriqué un superbe script menu (je pense l'avoir trouvé sur ce site ci) appelé "arbor". Le script ne tiens pas compte d'une database, mais son concepteur (Gérard) m'a gentiment répondu, sans pour autant donner un script modifié en réponse.
voici sa réponse "facile à faire":
---------
Est-ce que vous n'aurez pas quelques part en stock une version de « arbor » qui fait appel à une data-base MySQL pour créer l'arborescence du menu (avec un petit exemple). Bien sûr tout en restant aussi efficace et simple que « arbor ».
..............
Ce serait un carcan pour l'utilisateur d'ajouter cela "en dur" à Arbor puisqu'il faudrait imposer une partie de la structure de la base de données d'où sont extraites les données à afficher en arborescence...
Mais sur le principe, faire afficher par Arbor des données issues de MySQL est simple à bricoler par l'utilisateur : le principe c'est de construire à la volée un "fichier de menu" à partir des données extraites de la base puis ensuite de passer ce fichier à Arbor :
monArborescence = new Arbor( 'monfichierConstruit' ) ; Ce fichier de menu est de structure simple (voir la doc Arbor) et sa confection à la volée ne nécessitera que quelques lignes de PHP en plus de celles extrayant les données de la base.
Créer un fichier à la volée ne ralentira guère le processus de construction de la page. Sa durée sera d'abord et avant tout dépendante de la lenteur inhérente à l'extraction des données de la base MySQL.
Procéder ainsi présente de plus un gros avantage : dans le cas où les données de votre base ne sont pas modifiées fréquemment, vous pourrez ensuite utilisez ce "fichier de menu" comme un "cache", en accédant directement au fichier antérieurement créé au lieu de se reconnecter à chaque fois à la base pour reconstruire le fichier et vous vous retrouvez dans le cas d'un bête fichier statique. Un petit test sur la date du fichier avant de le passer à Arbor : inexistant ou trop vieux -> on le reconstruit, sinon on l'utilise. L'intervalle de reconstruction sera à adapter à la fréquence des mises à jours de la base.
En faisant cela vous accélérez considérablement l'accès à la base par l'utilisateur !
(Réponse d'ordre général puisque je ne connais pas les détails des structures et contraintes de votre contexte)
signé Gérard
-----------
Je pense que je suis trop néophyte pour comprendre ce qui est marqué ci-dessus ...
Mais si tu trouves la solution ... rire

... faites le moi savoir. Je suis déjà content de constater que je ne suis pas le seul à avoir eu cette idée. Il doit y avoir des solutions à notre problème.
All yours, Thibill