Die Aufgabe
4) MVC mit PHP (9 Punkte)
Im Folgenden soll eine objektorientierte MVC Web-Anwendung auf Basis von PHP und Smarty zur Darstellung von Kochrezepten vorbildlich entwickelt werden:
- Auf der ersten zu realisierenden Seite werden drei Rezepte des Tages (aus der Tabelle SPEISEN) dargestellt.
- Über Pfeiltasten kann man auch zu den Tagesempfehlungen der vergangenen und zukünftigen Tage navigieren und diese anzeigen.
- Nach Anklicken eines Gerichtes erhält man eine Beschreibung so wie eine Liste der Zutaten des Gerichtes aus der Tabelle ZUTAT angezeigt.
- Nutzer können auch eigene Rezeptvorschläge mit den zugehörigen Zutaten erfassen.
- Optional kann man sich auch zuerst eine Hilfe-Seite mit einer Anleitung anzeigen lassen.
Machen Sie einen sinnvollen Vorschlag für alle notwendigen:
- Verzeichnisse
- Dateien
- Geben Sie für die DB-Klassen die erforderlichen Methoden mit Parametern an (nur bezogen auf die beschriebenen Aufgaben!)
Geben Sie jeweils eine kurze Beschreibung an – es ist kein Programmcode erforderlich!
Die Website hat vier Aufgaben: drei Rezepte eines Tages zeigen, zu anderen Tagen blättern, ein Gericht mit Beschreibung und Zutaten zeigen, ein eigenes Rezept speichern. Dazu kommt eine Hilfe-Seite. Die Daten liegen in zwei Tabellen, SPEISEN und ZUTAT.
MVC heißt Model, View, Controller. Das Programm wird in drei Schichten geteilt: Model (Zugriff auf die Datenbank), View (Anzeige als HTML) und Controller (nimmt Anfragen an und steuert). Smarty ist eine Template-Engine: Die Seiten sind Vorlagen mit Platzhaltern, die der Controller mit Daten füllt.
Gesucht sind Ordner, Dateien und die Methoden der Datenbank-Klassen, je mit einer kurzen Beschreibung. Es gibt 9 Punkte.
- Die drei Schichten und wo sie liegen.
- Der Controller.
- Das Model: Verbindung, SpeisenDB, ZutatDB mit ihren Methoden.
- Die View: Smarty-Templates.
- Statische Dateien.
- Probe: ein Klick auf ein Gericht durch alle Schichten.