Navigation

kevkev

Erfahrenes Mitglied
Hi,

Ich häng grad an nem ganz blöden Problem.

Das ist meine Config, aus der später eine Navigation gebaut werden soll:
PHP:
$_config['navi2'][] = array(	array("news", "newsletter", "rssfeed"), 1);
$_config['navi2'][] = array(	array("dsl", "fullspeed"), 1);
$_config['navi2'][] = array(	array("dsl", "halfspeed"), 1);

news, newsletter, rssfeed, dsl, fullspeed und halfspeed wären die einzelnen Punkte.
Alles was im Array danach kommt, also z.b. "1" sind nur spezielle Einstellungen.

Ich möchte nun aus folgendem:
news, newsletter, rssfeed
dsl, fullspeed
dsl, halfspeed

folgende Struktur rausbekommen:
Code:
dsl
   -> fullspeed
   -> halfspeed
news
   -> newsletter
        -> rssfeed

array("news", "newsletter", "rssfeed")
news = erster Punkt
newsletter = Unterpunkt von news
rssfeed = Unterpunkt von newsletter

Und im Beispiel mit dsl gibt es 2 Unterpunkte unter "dsl".

Ich bastel nun schon seit ner Stunde rum, ich bekomme es einfach nicht hin!
Im Endeffekt soll jede Ebene mit "<ul>" anfangen.

Könnt Ihr mir da irgendwie helfen? :confused:

Gruß
Kevin
 
Tipp: Bau die Config gleich anderst... das ist so nicht einfach auszulesen :> darum wirst du auch Probleme haben

PHP:
$navi = array('dsl' => array(
                 'fullspeed' => 'fullspeed.php',
                 'halfspeed' => 'halfspeed.php'),
              'news' => array(
                 'newsletter' => array(
                     'anmelden' => 'anmelden.php'
                     ),
                  'rssfeed'   => 'feed.php'
                  )
              );

// und fürs auslesen, nur als beispiel

function menu($array){
    foreach ($array as $key => $row){
        $return .= "<ul>";
        if(!is_array($row)) $return .= "<li><a href='$row'>$key</a>";
        else{
            $return .= "<li>$key";
            $return .= menu($row);
            $return .= "</li>";
        }
        $return .= "</li>";
        $return .= "</ul>";
    }
    return $return;
}
echo menu($navi);
 
Danke, funktioniert super :).

Nur habe ich gezielt die andere Version der config gewählt, da wir noch viele andere Konfigurationsparameter an jeden Navigationspunkt hängen müßen.

Aber ist das andere so schwer zu realsieren? Wie gesagt, ich glaub ich bin grad nur ein wenig zu verpeilt, das kann nicht so schwer sein :confused.

Aber danke :).

Gruß
Kevin
 
Wenn du sicher sagst "es gibt keine Numerischen Links" dann könnte man so soviel speichern wie man will. Und die nummerischen als Konfiguration verwenden.
Der Auslese-algorhytmus muss diese dann einfach überspringen.

Oder wenn du feste Namen vorgibst diese überspringen lässt.

Ganz Alternativ wenn nicht für alle die zusätze gebraucht würden könnte man auch ein 2. Array machen


Auserdem war diese Form auch nur ein Vorschlag ;-) für eine Richtung
 
Hallo,
Kann mir wer sagen wie man die das SQL Statement für dieses Array geht?
Ich bekomm das irgendwie nicht auf die reihe.

PHP:
$navi = array('dsl' => array( 
                 'fullspeed' => 'fullspeed.php', 
                 'halfspeed' => 'halfspeed.php'), 
              'news' => array( 
                 'newsletter' => array( 
                     'anmelden' => 'anmelden.php' 
                     ), 
                  'rssfeed'   => 'feed.php' 
                  ) 
              );

Gruß
 
@engelb:
Ich werde da einfach 2 Arrays einsetzen.
Und Thx für die rekursive Funktion ;).

@Westbär:
Das ist nur ein Array, wie meinst du das mit dem SQL Statement?

Gruß
kevin
 
Naja, ich versuche diesen Code in MySQL umzuwandeln. Ohne den manuellen Arrays.
Ich finde das etwas schwierig weil das ganze für mich zu verschatchtelt ist.

Gruß
 
Zurück