• Keine Ergebnisse gefunden

Einstieg in dynamische Webtechnologien Runde 3: Eine Liste von Elementen - Team Nav

N/A
N/A
Protected

Academic year: 2021

Aktie "Einstieg in dynamische Webtechnologien Runde 3: Eine Liste von Elementen - Team Nav"

Copied!
3
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Einstieg in dynamische Webtechnologien

Runde 3: Eine Liste von Elementen - Team Nav

Eine weitere Nachricht von Alice...

Von: mail@alice-kleiner-shop.de

An: topteam@schuelerlabor-informatik.de

Betreff: Re:Anfrage bezüglich Erstellung eines Online-Shops

Hallo, liebes Entwicklerteam!

Ich bin begeistert von den Fortschritten, die ihr in der kurzen Zeit schon machen konntet...

Jetzt, wo ich sehe, wie gut es vorwärts geht, traue ich mich auch noch weitere Wünsche zu äußern.

Wie ihr vielleicht schon gesehen habt, hat das Datenbank-Team euch auch noch die Möglichkeit gegeben z.B. alle Kategorien gleichzeitig aus der Datenbank auszulesen.

Ich fände es daher cool, wenn wir noch folgende Erweiterungen einfügen könnten:

ImKopfbereich: Eine Leiste, in der alle Kategorien aufgelistet werden. Wenn man auf eine dieser Kategorien klickt, soll im Navigationsbereich die entsprechende Kategorie angezeigt werden.

ImNavigationsbereich: Eine Liste, in der alle Produkte der aktuellen Kategorie aufgelistet wer- den. Wenn man auf eines dieser Produkte klickt, soll im Hauptbereich das entsprechende Produkt angezeigt werden.

Im Hauptbereich: Zu jedem Produkt würde ich mir gerne mehrere Bilder anzeigen lassen, viel- leicht könntet ihr hier auch zusätzliche Produktbilder in der Datenbank ergänzen...

Gruß, Alice

Tja, wenn man einmal gut in Fahrt ist....

Versucht die von euch gesetzten Links so anzupassen, dass sie die gewünschte Kategorie/das gewünschte Produkt anzeigen...

Kleiner Tipp:Überlegt dazu erst wie der Link mit euren zuvor gewählten Variablen in der statischen Version aussehen würde und ersetzt anschließend die Kategorie und die Produktnummer durch die entsprechende gib..() Funktion.

Doch nun zur wesentlichen Aufgabe dieses Blattes.

Für diese letzte Aufgabe gibt es ein neues Konstrukt in PHP zu lernen: eine Schleife.

Doch was ist überhaupt eine Schleife?

1

(2)

Einstieg in dynamische Webtechnologien

Runde 3: Eine Liste von Elementen - Team Nav

Eine Schleife in der Programmierung ist eine Wiederholung. Wiederholt werden in dieser Schleife Anweisungen mit leicht unterschiedlichen Bedingungen. Das Ganze lernt man am besten an einem Beispiel:

. . . (1) <ol>

(2) <?php

(3) $Produktstapel = $datenbank->gibProdukteVonKategorieMitID(1);

(4) foreach ($Produktstapel as $Produkt){

(5) echo “<li>“;

(6) echo $Produkt->gibTitel();

(7) echo “</li>“;

(8) }

(9) ?>

(10) </ol>

. . .

Betrachten wir erst einmal die Codezeilen (1) und (10): hier wird im HTML-Code eine Liste erstellt. Der Bereich dazwischen sollte also eine Liste mit Elementen erstellen.

Dies bestätigt sich auch in den Zeilen (5) und (7), wo ein Listenelement mit dem echo-Befehl erstellt wird. In der Zeile (6) wird dann der Inhalt des Listenelements festgelegt...

In Zeile (6) also der Titel eines Produktes ausgegeben, welches in der Variablen $Produkt gespeichert ist.

Doch wie kommt an dieser Stelle das Produkt in die Variable?

Dazu schauen wir einmal in die Zeilen (3) und (4):

In Zeile (3) wird direkt ein ganzer Stapel von Pro- dukten in die Variable $Produktstapel geladen.

$Produktestapel

Produkt ID: 3

Titel: 3. Produkt ...

Produkt ID: 2

Titel: 2. Produkt ...

Produkt ID: 1

Titel: 1. Produkt ...

Nun beginnt die eigentliche Schleife:

In Zeile (4) steht, wenn man es mal übersetzt:

Für jede (Karte vom) $Produktestapel als $Pro- dukt (tue folgendes){in den Geschweiften Klam- mern stehen dann alle Anweisungen, die zu der Schleife gehören}

foreach $Produktestapel

Produkt ID: 3

Titel: 3. Produkt ...

Produkt ID: 2

Titel: 2. Produkt ...

$Produkt

as Produkt

ID: 1

Titel: 1. Produkt ...

Das heißt also:

Die foreach() Schleife nimmt die Elemente vom Stapel der ersten Variablen $Produktestapel und speichert sie nacheinander in der zweiten Va- riablen $Produkte ab. In dem Block mit den ge- schweiften Klammern kann dann die Variable wieder wie gewohnt verwendet werden.

2

(3)

Einstieg in dynamische Webtechnologien

Runde 3: Eine Liste von Elementen - Team Nav

Eine letzte Aufgabe...

1. Besprecht zuerst die Änderungen an der Seite im Team.

2. Erstellt nun wieder eine statische Version der neuen Elemente.

3. Baut nun die statische Version in die dynamische um, indem ihr:

(a) Die Produkte aus der Datenbank ladet.

(b) Eine foreach-Schleife innerhalb des neuen statischen Bereichs anlegt.

(c) Den Bauch ({. . . }) der Schleife mit einem einzelnen Element aus der sta- tischen Version füllt (andere Testdaten können entfernt werden).

(d) Die entsprechenden Stellen (für Titel etc.) in der statischen Version durch die entsprechenden gib..()-Methoden austauscht.

Herzlichen Glückwunsch!!! Damit habt ihr dieses Modul erfolgreich gemeistert!

Weitere Verschönerungen könnt ihr mit dem CSS-Beiblatt erledigen - bei weiteren Fragen stehen euch natürlich auch die Betreuer zur Verfügung. . .

Ansonsten noch einmal: Großes Lob für euren Einsatz!

3

Referenzen

ÄHNLICHE DOKUMENTE

Der Browser nimmt also die Adresse vom User entgegen, sendet damit eine Anfrage an den Server und baut aus dem HTML-Dokument, das der Server zurück sendet, die Website zusammen1.

Eine Datei wird hierbei angesprochen für einen sogenannten Pfad (z.B. /ordner1/unterordner3/datei.php).. In diesem Beispiel entsprechen die einzelnen Teile des Pfades den Körben

Wird nach Produkten aus einer Kategorie gesucht, durchsucht den Ordner Produkte nach allen Produkten, die bei Kategorie die gesuchte ID stehen haben4. Gebt anschließend alles als

Falls solch eine Ablage noch nicht existiert, nehmt eine neue und beschriftet diese mit x}. echo x; Macht erst, was bei x steht, und fügt das Ergebnis an der Stelle ins

Als Server ist es euer Auftrag, mit dem sogenannten Client (in diesem Fall: dem Browser) zu kommunizieren, die richti- ge Website zur ankommenden Anfrage heraus zu suchen

Titel Infosphere-Modul: Einstieg in dynamische Webtechnologien Beschreibung Das verrate ich nicht, was das ist. Das ist

Frage die Datenbank nach allen Kategorien in der Datenbank gibProduktMitID($ID). Frage die Datenbank nach dem Produkt mit der ID

Schaue, was auf dem Datenblatt unter Titel eingetragen ist und schreibe es an diese