powie.de Tech Forum

PHP und Webdesign => PHP - Datenbank Funktionen => Thema gestartet von: timb am 24. August 2010, 12:17:52

Titel: PHP / MySQL Tree View
Beitrag von: timb am 24. August 2010, 12:17:52
Guten Tag,
ich bin auf der Suche nach einer Möglichkeit einen Fragekatalog der aus einem Bereich, Modul, einem Abschnitt und einem Unterabschnitt besteht in einem Tree View abzubilden, um so eine möglichst einfache und schnelle Navigation zu ermöglichen.
Ich bin auch schon auf ein paar möglichkeiten im Internet wie z. B. dtree gestoßen, aber das ist nicht ganz dass was ich mir vorstelle, da die komplette Struktur des Baums schon in der DB gespeichert sein muss. Ich suche eine Möglichkeit den Baum \"dynamisch\" aufzubauen. Es gibt momentan jeweils eine Tabelle für den Bereich, das Modul, den Abschnitt und den Unterabschnitt sowie eine Tabelle für die Fragen.
Falls jemand einen Tipp hat wäre das super!
Titel: PHP / MySQL Tree View
Beitrag von: Powie am 24. August 2010, 15:15:26
Du hast also von Beginn an eine Begrenzung auf 3 Ebenen tief?
Titel: PHP / MySQL Tree View
Beitrag von: timb am 24. August 2010, 19:37:22
Hallo,
es wären vier Ebenen. Ich hätte es gerne so:
Modulname
    -----Abschnitt
           ------------Unterabschnit
                            -------------------Frage 1
                            -------------------Frage 2
  -----Abschnitt 2
         -------------Unterabschnitt
                           --------------------Frage 1
                           --------------------Frage 2
                           --------------------Frage 3
         -------------Unterabschnitt 2
                           --------------------Frage 1
usw.
Titel: PHP / MySQL Tree View
Beitrag von: k00ni am 25. August 2010, 10:18:07
Hallo,
eine Möglichkeit wäre eine Adaption von den Kategorie-System vom Powie.
Du brauchst eine Tabelle mit den Spalten
- id
- cat
- upper_cat
Die Spalte id ist fortlaufend und der PK.
cat speichert die aktuelle Spalte, also z.b. ihren Namen.
upper_cat speichert die übergeordnete Spalte, also z.b. ihren Namen. Leer wenn der Eintrag auf der höchsten Ebene liegt.
Das wäre das Grundgerüst. Sowas wie die Unterbringung von Links kannst du dann einfach anflanschen.
 
Viele Grüße
Titel: PHP / MySQL Tree View
Beitrag von: timb am 26. August 2010, 11:33:57
Hallo,
danke für die schnelle Rückmeldung. Das ist dann wieder ungefähr das Prinzip wie bei dtree.
Was mich daran stört ist, das ich die komplette Struktur schon vorher abspeichern muss. Aber
wahrscheinlich werde ich da nich herum kommen.
Titel: PHP / MySQL Tree View
Beitrag von: Powie am 26. August 2010, 12:23:29
Es gibt auch die Möglichkeit die Struktur in einer einzelnen Spalte der Tabelle mit abzuspeichern. ich habe das mal in einem Script gesehen, dort stand dann in der TREE Spalte ungefähr sowas jeweils drin:
1:2:3
1:2:4
2:1:1
2:1:2
2:1:3:1
Das kann man mit wenig Aufwand generieren, es ist per SQL selektierbar da du sagen kannst zum bsp: Where TREE Like \'2:1%\' . Auch sowas wäre möglich, und du brauchst keine Tabelle rein für den Baum.
Titel: PHP / MySQL Tree View
Beitrag von: michaeljee am 12. Januar 2013, 07:07:46
Hallo, dass ist toll, das ist genial Informationen, ich war auch auf der Suche für diese.Ich bin auch schon auf ein paar möglichkeiten im Internet wie z. B. dtree gestoßen, aber das ist nicht ganz dass was ich mir vorstelle, da die komplette Struktur des Baums schon in der DB gespeichert sein muss. Ich suche eine Möglichkeit den Baum \"dynamisch\" aufzubauen. Es gibt momentan jeweils eine Tabelle für den Bereich, das Modul, den Abschnitt und den Unterabschnitt sowie eine Tabelle für die Fragen.
Grüße
Titel: PHP / MySQL Tree View
Beitrag von: Powie am 12. Januar 2013, 11:39:21
Hi michael,
es ist auch ohne weiteres möglich das dynamisch zu machen. Das phpBB macht das zum Beispiel auch genau so mit den Kategorien, Unterkategorien, Sortierung usw.
Schlagwort: Nested Sets
Hier kannst du ein bissel was drüber nachlesen: http://de.wikipedia.org/wiki/Nested_Sets
Es gibt da eine Menge Artikel zu wenn du mal Google startest.
Titel: PHP / MySQL Tree View
Beitrag von: HTMLnoob am 22. März 2013, 11:54:57
Danke für den Link Powie, auch ich werde mich da mal demnächst ein wenig einlesen.
LG
Titel: PHP / MySQL Tree View
Beitrag von: am 17. September 2021, 01:11:18
9229450e8b
StevenGab Gab
clisp
zig
UtternthyProtlop
Sampwarciliqueestece
UndeplyPadselussyhot