Ankündigung

Einklappen
Keine Ankündigung bisher.

Rekursive Menü ausgabe

Einklappen

Neue Werbung 2019

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

  • Rekursive Menü ausgabe

    Hi,

    ich hab ein bestehendes Menüsystem geschrieben mit diesem DB ausbau:

    Code:
    CREATE TABLE `dlo_navi_kat` (
      `Id` int(11) NOT NULL auto_increment,
      `Name` varchar(25) NOT NULL default '',
      `parent_id` varchar(25) NOT NULL default '',
      `level` varchar(25) NOT NULL default '',
      `link_artikel` varchar(25) NOT NULL default 'link',
      `artikel_id` varchar(25) NOT NULL default '',
      `target` varchar(25) NOT NULL default '_self',
      PRIMARY KEY  (`Id`)
    ) TYPE=MyISAM AUTO_INCREMENT=12 ;
    Eigentlich ist es eine baum navi. ist genauso aufgebaut und funktioniert auch ähnlich, nur lass ich immer nur eine ebene anzeigen also eben 1 oder eben2 usw. entsprechend der parent_id(vater id).

    jetzt will ich aber alle menü punkte aufeinmal anzeigen lass. soviel mir bekannst ist würde das mit der rekursiven programmierung gehen.
    nur wie geht das?
    hab mir schon das tut von quake net angeschau werde aber einfach nicht schlau daraus.

    bitte um hilfe.

    Greetz Nana23

  • #2
    sollte so funktionieren:


    Code:
    function get_tree($who,$ebene) 
    { 
    $ergebnis = mysql_query("SELECT * FROM dlo_navi_kat WHERE parent_id='$who'"); 
    while($row = mysql_fetch_object($ergebnis)) 
    { 
    echo $ebene.$row->kat_bezeichnung; 
    get_tree($row->id, $ebene.''); 
    } 
    } 
    
    get_tree($id,"");

    Kommentar


    • #3
      Zitat von mqs
      sollte so funktionieren:


      Code:
      function get_tree($who,$ebene) 
      { 
      $ergebnis = mysql_query("SELECT * FROM dlo_navi_kat WHERE parent_id='$who'"); 
      while($row = mysql_fetch_object($ergebnis)) 
      { 
      echo $ebene.$row->kat_bezeichnung; 
      get_tree($row->id, $ebene.''); 
      } 
      } 
      
      get_tree($id,"");
      thx
      ich denke mal ich muss $row->kat_bezeichnung
      und $row->id ändern

      oder?

      Kommentar

      Lädt...
      X