PHP-Template-Engine: Menu mit 2x while erstellen

Fragen zu allen Themen rund ums Programmieren außerhalb von phpBB können hier gestellt werden - auch zu anderen Programmiersprachen oder Software wie Webservern und Editoren.
P7BB
Mitglied
Beiträge: 383
Registriert: 15.07.2008 19:40

Re: PHP-Template-Engine: Menu mit 2x while erstellen

Beitrag von P7BB »

mad-manne hat geschrieben:Das Array ist doch soweit ich das erkennen kann bereits korrekt gefüllt ... und es hapert immer noch am Auslesen/ausgeben des Ganzen!
Naja, es fehlt der Titel der Hauptkategorie. Man könnte es so machen, dass $menu[$i][0] immer der Titel der Hauptkategorie ist, oder man macht es mit den Klassen. ;) Ja, das mit den Klassen ist nicht die optimalste Lösung, aber es ist eine Lösung, die seinen Ansprüchen gerecht wird ;)
Benutzeravatar
Wuppi
Mitglied
Beiträge: 734
Registriert: 14.05.2002 23:04
Wohnort: Köln
Kontaktdaten:

Re: PHP-Template-Engine: Menu mit 2x while erstellen

Beitrag von Wuppi »

Hi

Klassen? Uff ... ich bastel meine scriptchen meist so das in jedem Script EIN neues "Feature" - also Methoden, Funktionen, Aufrufe etc. die ich so bisher noch nicht gemacht habe, nutze. Jedes Script hat da "Fokus" ... In diesem Script bin ich jetzt schon weit über mein "Lern-Soll" ;) (4 neue sachen drin/geplant; Ursprünglich wars nur eine Abfrage 2er Tabellen mit einem Aufruf; dann Template, jetzt array (aus der Not, weil die gewünschte Ausgabe so mit dem Template nicht klappt) und danach Multipler-Dateiupload [Server<->Server ist dagegen Pipifax - hab ich schon festgestellt]).

Daher @P7BB - danke für deinen gut gemeinten Tip mit Klassen - aber das wird mir zuviel [wäre was fürs nächste Script]. Würde da lieber deine Ursprüngliche Idee weiterverfolgen. php.net ist in sachen array-Beispielen leider nicht so dolle :( und sonst finde ich immer wieder nur Ausgaben für ein Standardarray - aber das lässt sich alles nicht auf eine Ausgabe innerhalb einer for-Schleife umsetzen. Irgendwie tue ich mich bei dem Array-Thema schwer (nicht Umsonst hab ich das Thema jahrelang gemieden wie die Pest) - aber jetzt häng ich drin ;) - jetzt möcht ich nur noch die Daten die ich, nachvollziehbar, ins Array reinbekommen habe, wieder rausbekommen ;)

Gruß
Benutzeravatar
gn#36
Ehrenadmin
Beiträge: 9313
Registriert: 01.10.2006 16:20
Wohnort: Ganz in der Nähe...
Kontaktdaten:

Re: PHP-Template-Engine: Menu mit 2x while erstellen

Beitrag von gn#36 »

Damit das ganze mal ein wenig vorwärts geht hier: Den ursprünglichen Arrayinhalt müsstest du z.b. so ausgeben können (ohne Template, den Umbau überlasse ich dir):

Code: Alles auswählen

$old_key = '';
foreach ($liste as $cat_key => $value)
{
$curr_key = array_keys($value);
if($old_key != $curr_key[0])
{
//Kategorie mit ausgeben:
echo "<!-- HTML für Kategorie, $cat_key als ID verwenden -->";
echo $curr_key[0];
echo "<!-- HTML Fortsetzung für Kategorie -->";
}
//Unterpunkt ausgeben
echo "<!-- HTML für Unterpunkt, $curr_key[0] als ID verwenden -->";
echo $value[$curr_key[0]];
echo "<!-- Noch mehr HTML für den Unterpunkt -->";

//Alten Wert neu füllen:
$old_key = $curr_key[0];
} 
Ich habe das nicht ausprobiert, aber das Prinzip sollte dennoch klar werden. Du gehst die Liste mit einer Schleife durch und schaust jedes mal ob sich die Kategorie geändert hat, indem du den alten Wert beim letzten Schleifendurchlauf zwischenspeicherst. Wenn er sich geändert hat, dann gibst du die Kategorie und den Unterpunkt aus, ansonsten nur den Unterpunkt.
Begegnungen mit dem Chaos sind fast unvermeidlich, Aber nicht katastrophal, solange man den Durchblick behält.
Übertreiben sollte man's im Forum aber nicht mit dem Chaos, denn da sollen ja andere durchblicken und nicht nur man selbst.
Antworten

Zurück zu „Coding & Technik“