kostenloser Webspace werbefrei: lima-city


Kategorien und Unterkategorien

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    anlagegeld

    anlagegeld hat kostenlosen Webspace.

    Hallo

    ich versuche gerade Kategorien und Unterkategorien zu managen
    mit 2 Ebenen bekomme ich es hin, aber ab der dritten Ebene versage ich kläglich

    ich speichere die Kategorien in einer MySQL Tabelle
    Jede Kategorie hat eine eigene ID (auto increment)
    Hauptkategorien haben in der Spalte ['topkat'] den Wert 0
    Unterkategorien haben in der Spalte ['topkat'] den Wert der übergeordneten Kategorie

    Wie bekomme jetzt eine mehrdimensionales Array,
    das jede Unterkategorie in eine Ebene unter die übergeordnete Kategorie legt
    (ohne in der Schleife für jede Kategorie wieder eine MySQL Anfrage zu starten)

    Wie muss die Abfrage aussehen (bzw. PHP Logik mit Daten-Array aus Tabelle)
    damit ich für Kategorien in mehrern Ebenen (als hierarchisches Array) bekomme ?
    Danke!
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. u***e

    Ich denke mal du wirst bemerkt haben,
    dass es auf deine momentane Herangehensweise sehr schwer wird
    es überhaubt und dazu noch performant hinzubekommen.

    Erkundige dich dazu mal über "Nested Sets".

    http://www.klempert.de/nested_sets/
    Hier, ich nehm dir mal das Googeln ab. ;D
  4. Hallo

    man kann sich "Nested Sets" auch einfacher machen
    wenn man vorher weiss, vielele Unter-Ebenen es geben soll

    einfach die "Bereiche" bzw. "knoten" vorher festlegen
    dann muss man nicht jedesmal die Knoten updaten
    wenn neue Elemente dazu kommen

    BSP: mit 3 Ebenen

    1. Ebene (Hauptkategorien) ... jeweils ganze 1000er Schritte
    2. Ebene (Unterkategorien jeweils ganze 100er Schritte
    3. Ebene (Unter-Unter-Kats) jeweils innerhalb der 100er


    oder man benutzt eine fertige Klasse / Funktion für Nestet Sets

    EDIT: sowas hier: phpclasses Celko

    kenne jetzt grad keine, aber vielleicht kann ja jemand eine empfehlen
    (oder machen) wo man einfach Kategorien einfügen kann

    Funktionsaufruf mit $inknoten = wo die Kategorie "rein" soll
    makeNewkat ($inknoten, $neuekat);

    z.B.
    makeNewkat ('Root', 'Hauptkategorie3'); // neue Haupt-Kategorie eintragen
    makeNewkat ('Hauptkategorie3', 'Unterkategorie7'); // neue Kategorie in Haupt-Kat3 eintragen
    makeNewkat ('Unterkategorie7', 'Unterunterkategorie2'); // neue Kategorie in Unterkategorie7 eintragen

    nur so als Idee :)


    Beitrag zuletzt geändert: 4.11.2011 15:09:52 von kataloge
  5. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!