Array soll Klappmenü steuern

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

  • Array soll Klappmenü steuern

    Hallo,

    ich versuche schon geraumer Zeit aus einem Array in dem ich eine Menü-Struktur hinterlegt habe ein Klapp-Menü zu erzeugen.

    Ich habe das Array und dieses wandel ich schon in die Menüstruktur um. Das klappt soweit schon gut.

    Dann habe ich ein Klappmenü, das so funktioniert, wie ich das haben will.

    PHP-Code:
    <?php 
    include("connect.php"); // Verbindung zu Datenbank 
    include("styles/style.php"); // Verbindung zu Datenbank 
    include("debuglib.php"); // Einbindung Debuglib 
    include_once('functions.php'); // Einbindung allgemeiner Funktionen 
    include_once('language/localisation.php'); // Einbindung Sprachdatei 
    include_once('autoload.php'); // Einbindung Autoload 
     
    ?> 
     
    <script> 
     $(document).ready(function(){ 
     
    // Klapp Menue 
      var $klapp = $('#sitetree li.categories li'); 
      $klapp.filter(':not(.current-cat)').children('ul').css("display","none"); 
      $klapp.filter(':has(ul)').children(':first-child').append(' &raquo;').click(function(){ 
        $(this).parent().siblings().children('ul:visible').slideUp('normal'); 
        $(this).next().slideToggle('normal'); 
        return false; 
      }); 
     
     }); 
    </script> 
     
    <?php 
     
    $inputArray 
    = array( 
        array( 
    'ID' => 1'parentID' => 0'title' => 'Menue 1' ), 
        array( 
    'ID' => 2'parentID' => 0'title' => 'Menue 2' ), 
        array( 
    'ID' => 3'parentID' => 0'title' => 'Menue 3' ), 
        array( 
    'ID' => 4'parentID' => 0'title' => 'Verstecktes Menue' ), 
        array( 
    'ID' => 5'parentID' => 1'title' => 'Seite 1' ), 
        array( 
    'ID' => 6'parentID' => 1'title' => 'Seite 2' ), 
        array( 
    'ID' => 7'parentID' => 2'title' => 'Seite 3' ), 
        array( 
    'ID' => 8'parentID' => 3'title' => 'Seite 4' ), 
        array( 
    'ID' => 9'parentID' => 4'title' => 'Seite 5' ), 
    ); 
     
    $outputArray = array(); 
    $nodeRefs = array(=> &$outputArray); 
     
    foreach (
    $inputArray as $element) { 
        
    $parent = &$nodeRefs[$element['parentID']]; 
        
    $parent[$element['ID']] = array('title' => $element['title']); 
        
    $nodeRefs[$element['ID']] = &$parent[$element['ID']]; 

     
    print 
    print_a($outputArray'l:Array anzeigen;r:1;tt:1'); 
     
    echo 
    "      <div id='sitetree'>" 
        
    ."        <ul>" 
        
    ."          <li class='categories'><h2>Seitenbaum</h2>" 
        
    ."            <ul>" 
        
    ."              <li class='cat-item'><a href=\"#\">Menue 1</a>" 
        
    ."                <ul class='children'>" 
        
    ."                  <li class='cat-item'><a href=\"#/\">Seite 1</a></li>" 
        
    ."                  <li class='cat-item'><a href=\"#/\">Seite 2</a></li>" 
        
    ."                </ul>" 
        
    ."              </li>" 
        
    ."              <li class='cat-item'><a href=\"#\">Menue 2</a>" 
        
    ."                <ul class='children'>" 
        
    ."                  <li class='cat-item'><a href=\"#/\">Seite 3</a></li>" 
        
    ."                </ul>" 
        
    ."              </li>" 
        
    ."              <li class='cat-item'><a href=\"#\">Menue 3</a>" 
        
    ."                <ul class='children'>" 
        
    ."                  <li class='cat-item'><a href=\"#/\">Seite 4</a></li>" 
        
    ."                </ul>" 
        
    ."              </li>" 
        
    ."              <li class='cat-item'><a href=\"#\">Verstecktes Menue</a>" 
        
    ."                <ul class='children'>" 
        
    ."                  <li class='cat-item'><a href=\"#/\">Seite 5</a></li>" 
        
    ."                </ul>" 
        
    ."              </li>" 
        
    ."            </ul>" 
        
    ."          </li>" 
        
    ."        </ul>" 
        
    ."      </div>"
     
    ?>
    Das Array wird mir auch korrekt angezeigt. Siehe Screenshot als Anhang.

    Mein Problem ist nun, wie ich innerhalb der Schleife die einzelnen Bestandteile so ansteuern kann, dass ich die Liste mit meinen Klassen innerhalb der Schleife habe.

    Kann mir da jemand einen Denkansatz geben?

    Vielen Dank
    Kay
    Angehängte Dateien

  • #2
    Hallo,


    Welchen Nutzen hat denn dein Array, wenn du es sowieso 'von Hand' ausgibst? Ich sehe da keinen. Wenn du schon ein Array benutzt, gib dieses auch in einer Schleife aus - erst sortieren (falls es nicht manuel gepflegt wird und die Reihenfolge nicht schon feststehen sollte) und dann Stichwort Gruppenwechsel

    Kommentar


    • #3
      Hi,

      das ist ja genau mein Problem. ch weiss nicht wie ich das in die Schleife übergeben soll.

      Die Liste soll ja in der Schleife aus dem Array erzeugt werden.

      Das Array wird dann später aus einer Datenbank gesteuert.

      Kommentar


      • #4
        Alles über Schleifen steht im Manual. Wo haperts denn konkret?

        Kommentar


        • #5
          Hab es jetzt direkt über eine Datenbankabfrage gelöst. Trotzdem vielen Dank.

          Kommentar

          Lädt...
          X