tutorials.de Buch-Aktion 02/2012
Like Tree2Danke
  • 1 Beitrag von Bratkartoffel
  • 1 Beitrag von Yaslaw
ERLEDIGT
NEIN
ANTWORTEN
3
ZUGRIFFE
224
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Sprint Sprint ist offline Mitglied Platin
    Registriert seit
    Apr 2004
    Ort
    Die heimliche Hauptstadt des Bieres
    Beiträge
    563
    Hallo zusammen,

    bei einem DB gestützten Menü ergibt sich für mich ein Problem. Bei dem verwendeten Script lassen sich bei den Oberpunkten keine Verlinkungen platzieren, bzw. sie werden bim Aufklappen des Menüs nicht ausgeführt. Das selbst ist kein Problem, nur kann der Admin im CMS trotzdem Texte auf diese Oberpunkte anlegen. Um das zu verhindern, möchte ich bei der Auswahl, zu welchem Menüpunkt der Text erstellt werden soll, die Punkte ausblenden, die Unterpunkte besitzen.
    Beispiel:

    id | bezeich | parentid

    01 | Punkt a | 0
    02 | Punkt b | 0
    03 | Punkt c | 2
    04 | Punkt d | 2
    05 | Punkt e | 2
    06 | Punkt f | 0


    Es sollen also nur die Punkte 1, 3, 4, 5, 6 ausgegeben werden. Punkt 2 nicht, da er Unterpunkte besitzt.
    Mit zwei getrennten Abfragen und verarbeiteten Arrays hab ich es hinbekommen, aber leider hab ich überhaupt keine Idee, wie man sowas in einer Abfrage ausführen kann. Hat da jemand einen Ansatz für mich?

    Vielen Dank schonmal,
    Sprint
     
    Think Different.

  2. #2
    Avatar von Bratkartoffel
    Bratkartoffel Bratkartoffel ist offline gebratene Kartoffel
    tutorials.de Premium-User
    Registriert seit
    Jun 2007
    Ort
    Passau (Niederbayern)
    Beiträge
    1.298
    Hallo,

    filtere nach den parentids, in etwa so (ohne testen):

    Code sql:
    1
    
    SELECT * FROM tabelle WHERE id NOT IN (SELECT DISTINCT parentid FROM tabelle);

    Gruß
    BK
    Sprint bedankt sich. 
    Über eine gute Bewertung freut sich jeder ;)
    Bitte erledigte Threads als "Erledigt" markieren.

    "Though a program be but three lines long, someday it will have to be maintained.''
    -- Geoffrey James, "The Tao of Programming"

  3. #3
    Avatar von Yaslaw
    Yaslaw Yaslaw ist offline n/a
    tutorials.de Moderator
    Registriert seit
    Dec 2007
    Ort
    Winterthur(CH)
    Beiträge
    4.673
    Du must einfach prüfen, dass die ID nirgens als parentid aufgelistet ist. Entweder mit einem Subquery
    Code sql:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    
    SELECT
        *
    FROM
        menu11
    WHERE
        id NOT IN (
                    SELECT DISTINCT 
                        parentid 
                    FROM 
                        menu11 
                    WHERE 
                        parentid <> 0
                  )

    oder mittels JOIN
    Code sql:
    1
    2
    3
    4
    5
    6
    7
    8
    
    SELECT
        m1.*
    FROM
        menu11 AS m1
        LEFT JOIN menu11 AS m2
            ON m1.id = m2.parentid
    WHERE
        m2.id IS NULL
    Sprint bedankt sich. 
    ---------------------------------------------------------------------------------------------------
    item: Tutorial: [PHP][MySQL] Debug Queries
    item: Schreibt mir keine PN mit Fragen die im Forum beantwortet werden können - ich mache kein persönliches coaching
    item: Ich habe es mir aus gesundheitlichen Gründen abgewöhnt unformatierten Code zu lesen (Auch SQL-Statements kann man formatieren!)
    item: Bitte zur besseren Lesbarkeit PHP-Code in [PHP]...[/PHP], SQL in [SQL]...[/SQL], Visual Basic in [VB]...[/VB] etc. schreiben

  4. #4
    Sprint Sprint ist offline Mitglied Platin
    Registriert seit
    Apr 2004
    Ort
    Die heimliche Hauptstadt des Bieres
    Beiträge
    563
    Vielen Dank für die schnelle Hilfe an Yaslaw und Bratkartoffel (deine Lösung hat auch auf Anhieb funktioniert).
     
    Think Different.

Ähnliche Themen

  1. HTTP_ACCEPT_LANGUAGE ausfiltern
    Von buzzom im Forum PHP
    Antworten: 5
    Letzter Beitrag: 29.06.08, 19:29
  2. Antworten: 6
    Letzter Beitrag: 30.11.05, 11:03
  3. Sonderzeichen ausfiltern
    Von SwingerLive im Forum PHP
    Antworten: 4
    Letzter Beitrag: 25.03.03, 08:57
  4. Antworten: 1
    Letzter Beitrag: 20.02.03, 15:18
  5. Dateityp ausfiltern
    Von blubber im Forum PHP
    Antworten: 2
    Letzter Beitrag: 05.02.03, 20:18