Problem mit children von Nested SET

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Problem mit children von Nested SET

    PHP-Code:
    $sql "SELECT n.id, n.menu_link,  n.menu_name, n.menu_area, COUNT(*)-1 AS level, n.lft, n.rgt, ROUND ((n.rgt - n.lft - 1) / 2) AS children FROM ".self::PREFIX."sections AS n, ".self::PREFIX."sections AS p WHERE
        (n.lft BETWEEN p.lft AND p.rgt)
        AND ((n.menu_area = '
    $menu_area_id' AND n.language_id = '$language_id')
        AND (p.menu_area = '
    $menu_area_id' AND p.language_id = '$language_id'))
        AND ((n.access_for = '#all') OR (n.access_for IN ("
    .$this -> front_users($_SESSION['front_user_id'])."))
        AND (p.access_for = '#all') OR (p.access_for IN ("
    .$this -> front_users($_SESSION['front_user_id']).")))
        AND ((n.public_status = '2' AND p.public_status = '2')
        OR (n.public_status = '"
    .$_ENV['open_preview']."') AND (p.public_status = '".$_ENV['open_preview']."')) 
    Hier wird die Falsche Anzahl von Kinder ausgegeben. Es werden alle, auch die verbrogenen (((n.access_for = '#all') OR (n.access_for IN (".$this -> front_users($_SESSION['front_user_id'])."))
    AND (p.access_for = '#all') OR (p.access_for IN (".$this -> front_users($_SESSION['front_user_id']).")))) ausgegeben.

    Hat mir jemand einen Tipp, was falsch läuft

  • #2
    Dann stimmt deine Bedingung nicht. Aber du wirst wohl keinen finden, der sich hier mal eben ne passende Datenbankstruktur mit Testdaten ausdenkt. Datenbank kannst du mit PDO und SQLite in-memory mocken.

    Kommentar

    Lädt...
    X