Jeena Paradies: Baum-Menü Struktur Verwaltungstool

Beitrag lesen

Hallo,

Ich sitze gerade an einem Problem bei welchem ich alleine nicht weiterkomme und deshalb ein wenig Beratung eurerseits brauche.

Ich habe mir eine Software geschrieben, die mir aus einem multidimmensionalen (PHP) Array ein Menü erstellt.

Jetzt versuche ich irgendwie eine Software zu schreiben, die es dem Benutzer auf möglichst einfache Weise erlaubt ein solches Menü zu erstellen. Das scheint gar nicht so einfach zu sein. Das Menü soll dann im Endeffekt aus einigen verschachtelten Listen bestehen und in etwa so ausehen (zum Schluss natürlich noch viel größer):

|-Weblog
  |-Madagaskar
  |-FIRMA
   |-Wer ist FIRMA
   |-Tätigkeitsbereiche
    |-Reisen mit FIRMA
     |-Bla
    |-Projektmanagement
    |-Kulturprojekte
   |-Kontakt
  |-Land & Leute
  |-Produkte
  |-Reiseinfo

Jetzt habe ich mir überlegt, dass ich das eigentlich mit JavaScript am einfachsten umsetzen könnte. Ich würde ein ganz großes Formular anlegen, welches auch wunderbar, durch die gleiche Listenverschachtelung wie im späteren Menü, formatiert ist, so dass man die Struktur gleich erfassen kann und seine Menüpunkte an geeigneter Stelle einfügen kann. Bei jedem Punkt würde es dann Buttons zum Einfügen (eine Ebene tiefer, bzw. in der gleichen Ebene unten drunter) geben. So weit so gut. Die einzelnen Inputfelder würden dann im name Attribut gleich das Array abbilden, welches dann zum Schluss herauskommen soll, hier ein Beispiel aus dem oberen Menü und zwar dem Punkt "Projektmanagement" und dem Inputfeld für das Linkziel:

href: <input type="text" name="menu[2][1][1]['href']" value="" />

Wenn ich jetzt eine neue Ebene erstellen will, die genau drunter eröffnet wird, dann lese ich den Inhalt den name Attributes aus, und ersetze ['href'] durch [0]['href'] das klappt noch sehr gut. Mein wirklich großes Problem ist, wie schaffe ich es einen Neuen Menüpunkt in der gleichen Ebene zu machen, dieser müsste ja dann den namen menu[2][1][2]['href'] bekommen. wie kann ich da irgendwie die letzte Zahl in einer Klammer auslesen und um eines hochzählen (könnte ja auch eine zweistellige Zahl sein, oder noch tiefer Verschachtelt)?

Oder hat jemand eine revolutionär viel einfachere Variante um ein solches PHP Array zu erzeugen, auf die ich bisher noch nicht gekommen bin? Es muss vor allem sehr einfach und nachvollziehbar für den Benutzer sein.

Grüße
Jeena Paradies

--
Vlona Koorbash Grafiken - PDF-Magazin mit Grafiken meiner Frau erschienen | Jlog | Gourmetica Mentiri