mediengestalter.info
FAQ :: Mitgliederliste :: MGi Team

Willkommen auf dem Portal für Mediengestalter

Aktuelles Datum und Uhrzeit: Do 18.04.2024 05:07 Benutzername: Passwort: Auto-Login

Thema: HTML-Liste mit Nested Sets erstellen vom 27.04.2008


Neues Thema eröffnen   Neue Antwort erstellen MGi Foren-Übersicht -> Programmierung -> HTML-Liste mit Nested Sets erstellen
Seite: 1, 2  Weiter
Autor Nachricht
Schneemann
Threadersteller

Dabei seit: 15.01.2006
Ort: -
Alter: -
Geschlecht: -
Verfasst So 27.04.2008 23:46
Titel

HTML-Liste mit Nested Sets erstellen

Antworten mit Zitat Zum Seitenanfang

Hallo,

ich habe jetzt 4 Stunden gesucht nach einer Hilfe wie ich aus Nested Sets eine Ausgabe mit <ul> und <li> hinbekomme aber außer der selben Fragen nie eine Antwort gefunden.

Wer kann bei diesem Problem weiterhelfen oder hat gar die Lösung parat? Menno!
  View user's profile Private Nachricht senden
rob

Dabei seit: 11.12.2003
Ort: ~/
Alter: 46
Geschlecht: Männlich
Verfasst Mo 28.04.2008 03:03
Titel

Antworten mit Zitat Zum Seitenanfang

Worum geht es bitte?
Zitat:
Nested Sets

Das Konzept/Modell ist mir bekannt, aber ich weiß nicht, worauf du hinaus willst.
Bist du dabei selbst eine Implementierung zu schreiben? Oder arbeitest du mit einer fertigen Software und hast irgendwie Probleme mit einer Ausgabe in HTML?
Mit was für einer Sprache arbeitest du überhaupt?

Vielleicht hilft das?
http://www.klempert.de/nested_sets/
http://www.klempert.de/nested_sets/artikel/
http://www.klempert.de/nested_sets/demo/NestedSets.tar.gz

http://pear.php.net/package/DB_NestedSet
  View user's profile Private Nachricht senden
Anzeige
Anzeige
bacon

Dabei seit: 24.10.2007
Ort: -
Alter: -
Geschlecht: -
Verfasst Mo 28.04.2008 08:30
Titel

Antworten mit Zitat Zum Seitenanfang

Wahrscheinlich hakt es daran, aus dem zurückgelieferten Resultset eine rekursive Baumstruktur beliebiger Tiefe zu basteln.

Leider wissen wir nicht, mit welchem Rdbs und welcher Programmiersprache du arbeitest. Ich gehe einfach mal von PHP5 aus.

Du bekommst ja eine geordnete Liste von Tupeln zurück (wenn du alles richtig gemacht hast), die die Nutzlast und die Hierarchietiefe beinhaltet (level). Idealerweise auch noch die Info, ob ein Tupel ein Blatt oder einen Knoten repräsentiert (Blatt = Knoten ohne Kinder, Knoten = Blatt mit Kindern). Siehe (wie Rob schon sagte): http://www.klempert.de/nested_sets/artikel/

Diese Liste musst du nun Iterativ behandeln und während des Durchlaufs rekursiv deine Listenstruktur herausrendern. Was aber nicht besonders effizient ist, da du zwar nun einen dollen Algorithmus hast, um eine ungeordnete Liste zu produzieren, aber für andere Anwendungsfälle (geordnete Liste, n-Dim-Array, etc) jeweils das kleiche Konstrukt brauchst, welches lediglich um die Art der Ausgabe erweitert werden muss.

Am besten schreibst du dir direkt eine Klasse, die das Iterator Muster, genauer den Rekursiven Iterator (eine Erweiterung des klassischen Iterator-Patterns) implementiert. Die Schnittstelle hierzu findest du in der SPL, die heißt dann RecursiveIterator: http://www.php.net/~helly/php/ext/spl/interfaceRecursiveIterator.html

Schau dir bei Gelegenheit vielleicht auch mal Propel an, das ist ein Orm-Framework, das dir die leidige Arbeit abnimmt (Lerneffekt dann aber natürlich =0 )


Zuletzt bearbeitet von bacon am Mo 28.04.2008 08:33, insgesamt 1-mal bearbeitet
  View user's profile Private Nachricht senden
Glas

Dabei seit: 24.05.2003
Ort: Bremen
Alter: 41
Geschlecht: Männlich
Verfasst Mo 28.04.2008 09:35
Titel

Antworten mit Zitat Zum Seitenanfang

Vorrausgesetzt Du arbeitest mit MySQL, findest Du hier noch einen anständigen Artikel bzgl. der Verwaltung von hierachischen Daten. Vielleicht hilfts Dir bei Deinem Problem Lächel

http://dev.mysql.com/tech-resources/articles/hierarchical-data.html

edit: Netter Link zum RecursiveIterator bacon. Bedankt Grins


Zuletzt bearbeitet von Glas am Mo 28.04.2008 09:37, insgesamt 1-mal bearbeitet
  View user's profile Private Nachricht senden
bacon

Dabei seit: 24.10.2007
Ort: -
Alter: -
Geschlecht: -
Verfasst Mo 28.04.2008 10:01
Titel

Antworten mit Zitat Zum Seitenanfang

Biddeschön. Deiner ist aber auch nicht schlecht^^.
  View user's profile Private Nachricht senden
Schneemann
Threadersteller

Dabei seit: 15.01.2006
Ort: -
Alter: -
Geschlecht: -
Verfasst Mo 28.04.2008 23:37
Titel

Antworten mit Zitat Zum Seitenanfang

Ich arbeite mit PHP und MySQL. Mein Nested Set basiert genau auf dem Beispiel von Arne Klempert. Leider zeigt er keinen Weg wie man eine <ul><li> Liste generiert. Auch würde ich gerne nicht die PEAR-Klasse nutzen sondern es selbst verstehen können statt mich durch eine extrem umfangreiche Klasse zu wurschteln, bei der ich am Ende wieder nur Bahnhof verstehe. *Schnief*

Es fehlt mir nicht an Grundlagen von PHP, aber um tiefer in das Thema zu kommen sind diese High End KLassen zu kompliziert zum Verstehen. *Schnief*

Hat keiner eine Lösung oder einen Link auf ein Tutorial wo genau das gemacht wird? Ich stoße bei Googl eimmer nur auf diese Frage aber nie auf Antworten.


Zuletzt bearbeitet von Schneemann am Mo 28.04.2008 23:44, insgesamt 1-mal bearbeitet
  View user's profile Private Nachricht senden
rob

Dabei seit: 11.12.2003
Ort: ~/
Alter: 46
Geschlecht: Männlich
Verfasst Di 29.04.2008 00:06
Titel

Antworten mit Zitat Zum Seitenanfang

Warum nimmst du dir denn nicht das Klempert-Script als Vorlage?
Hast du dir die Online-Demo angeschaut? Okay, da wird keine Liste generiert, sondern da kommen Selects zum Einsatz. Aber das Prinzip der Darstellung ist ja eigentlich das Gleiche...
  View user's profile Private Nachricht senden
Schneemann
Threadersteller

Dabei seit: 15.01.2006
Ort: -
Alter: -
Geschlecht: -
Verfasst Di 29.04.2008 00:50
Titel

Antworten mit Zitat Zum Seitenanfang

Nein, das Prinzip ist nicht das gleiche, da er nur pro Level die Leerzeichen davor erhöht. Ich will aber eine semantisch korrekte <ul><li>.

Sein "fertiges" Script baut auf die PEAR-Klasse, also auch nicht so toll. *Schnief*
  View user's profile Private Nachricht senden
 
Ähnliche Themen [PHP/MySQL] Dynamisches Menü mit Nested Sets
HTML/CSS - Problem mit Liste
Liste in html mit tabs ertsellen
ol ul li / Historie mit Jahreszahlen als HTML Liste
[HTML] Abstände zwischen Bildern (Liste)
[Hilfe] Formatierung von HTML-Liste/Menü
Neues Thema eröffnen   Neue Antwort erstellen Seite: 1, 2  Weiter
MGi Foren-Übersicht -> Programmierung


Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst an Umfragen in diesem Forum nicht mitmachen.