Mailinglisten-Archive |
Genau die Idee war mir auch gekommen, bin gerade dabei, das zu testen bzw. mein dummes Hirn anzustrengen, das auf die Reihe zu bringen :) Ich sag Bescheid, wenn ichs hab. Danke erstmal und liebe Grüße aus Berlin Jörn Michael Dunkel schrieb: > Sorry mein fehler, > > über das problem hatte ich mir auch lange gedanken gemacht, aber > eigentlich ist es ganz einfach, du speicherst dir immer das level vom > vorgänger tust das dann mit dem aktuellen vergleich, sind sie gleich > dann bist du in der gleichen ebene, wenn es um eins kleiner ist musst du > ein ul zu machen, wenns gößer ist ein ul auf > oder noch ganz anders, du kannst auch divs benutzen und deine > einrückungen so bestimmt zb. 10px * level. > > > Gruß > Micha > > Jörn Grube schrieb: >> Das hab ich, steht ja auch so in dem genannten Artikel. Damit weiß ich >> aber nur, ob die Zeile, die gerade dran ist, ein Ast, ein Zweig oder gar >> nur ein Blatt ist. Damit weiß ich dann aber noch nicht, wie ich in der >> Ausgabe rauskriege, wo ich das jeweilige < ul > bzw. < /ul > schreiben >> muss. Denn speziell letzteres darf ja erst kommen, wenn alle Blätter >> durch sind, dann alle Zweige durch sind. Das Problem liegt also nicht in >> der DB-Abfrage, sondern wie ich das Ergebnis per PHP ausgebe. Und das >> auch noch mit korrektem HTML-Code. Aber ich denk, ich hab da eine Idee, >> mal sehen, ob das klappt :) >> >> Grüße aus Berlin Jörn >> >> Michael Dunkel schrieb: >> >>> Hi, ich denke das hier ist das was du brauchst, das level gibt dir in >>> dem fall dann die tiefe an, sprich deine einrückungen >>> >>> SELECT n.*, >>> round((n.rgt-n.lft-1)/2,0) AS offspring, >>> count( * ) -1 + ( n.lft >1 ) AS level >>> FROM kategorie n, >>> kategorie p >>> WHERE n.lft BETWEEN p.lft AND p.rgt >>> AND ( >>> p.id != n.id >>> OR n.lft =1 >>> ) >>> GROUP BY n.id >>> ORDER BY n.lft >>> >>> Gruß >>> Micha >>> >>> >>> Jörn Grube schrieb: >>> >>>> Es ließ sich nicht länger vermeiden, also hab ich mich mit Nested Sets >>>> beschäftigt. Nach der Lektüre dieses Artikels: >>>> http://www.klempert.de/nested_sets/artikel/ >>>> hab ich das auch soweit kapiert (ist sooo schwer ja auch nicht). >>>> Wobei ich nun aber doch ein Problem kriege, ist die Frage, wie ich das >>>> Ergebnis des Ganzen, also z.B. den kompletten Navigationsbaum in diese >>>> Form kriege: >>>> Säugetiere >>>> Primaten >>>> Halbaffen >>>> Affen >>>> Nagetiere >>>> Alles in eine einzelne Liste (oder Tabelle, aber wer will die schon >>>> noch) ist ja nicht schwer, nur muss ich ja in den Listen-Punkten wieder >>>> verschachtelte Listen erstellen und da fehlt mir im Moment ein wenig der >>>> Ansatz. Vielleicht kann mir mal jemand ein paar passende Stichwörter >>>> hinschmeißen, über die ich dann nachdenken kann :) >>>> >>>> Grüße aus Berlin Jörn >>>> >>>> >>> >> > >
php::bar PHP Wiki - Listenarchive