Für Speisekarte eine Datenbank anlegen?

5 Antworten

Ich würde zuerst einmal hinterfragen, ob deine Bekannten tatsächlich eine statische Webseite haben wollen, deren Inhalt sich (bis auf die Speisekarte) nie ändert bzw. bei der sie selbst für kleinste Änderungen stets auf technischen Support angewiesen wären.

Wenn dem so ist, wäre der einfachste Weg ein PDF-Dokument, welches du lediglich verlinkst und/oder zusätzlich via iframe-/object-Element einbindest. Das ist generell keine unübliche Lösung und hat den Vorteil, dass für eine Änderung lediglich eine Datei in einem bestimmten Ordner einmal ausgetauscht werden muss.

Andernfalls würde ich dir raten, direkt mit einem CMS zu arbeiten. Da gibt es auch etliche leichtgewichtige, flexible Lösungen (Bsp.: Batflat, CMSimple, GetSimple CMS, Kirby, Monstra, ...). Meist kannst du die Theme-Templates mit PHP schreiben oder das CMS bietet noch ein eigenes Template-System. Das wäre im Grunde dann auch das, was du auch mit Thymeleaf hattest.

Der Vorteil dabei ist, dass die Seitenbetreiber eine grafische Oberfläche zur Pflege der Felder haben, die du vorgibst. Die Frage, wie die Daten konkret gespeichert werden, kannst du dem CMS überlassen, die oben genannte Auswahl braucht dafür nicht einmal eine Datenbank, sondern speichert die Daten dateibasiert. Du musst lediglich Felder im CMS definieren und aus deinen HTML-Dateien Templates machen, in denen du die Werte der Felder aus dem CMS einsetzt.

Du kannst natürlich ganz einfach deine Speisekarte in eine csv Datei ablegen

Dann per PHP einlesen und schön als HTML anzeigen lassen.

Erspart viel Arbeit und Änderungen sind auch viel einfacher

Eine Datenbank eignet sich gut, wenn Daten nach uunterschiedlichen (ggf. bei der Entwicklung noch nicht bekannten) Kriterien gefiltert werden sollen.

Oder wenn Produkte / Speisen online aus Bausteinen zusammengesetzt werden sollen.

Nach meiner Kenntnis trifft das für Speisekarten nicht zu, die sind für Monate oder Jahre fest aufs Papier gebannt.

Eine Lösung für die Verwendung einer Datenbank auf deiner Restaurant-Webseite könnte sein, ein Backend-Framework wie Node.js, Ruby on Rails oder Django zu verwenden, um Daten aus der Datenbank abzurufen und HTML-Code dynamisch zu generieren. Diese Lösung ist flexibler und leichter zu warten als reines HTML/CSS

Woher ich das weiß:eigene Erfahrung
Dicii 
Fragesteller
 12.04.2023, 22:21

Danke für den Tipp mit Node.js, ich hab jetzt paar dinge ausprobiert und das ist genau das was ich gesucht habe. Weißt du zufällig wie das ist, wenn ich jetzt die Seite Online stellen wollen würde? Ich betreibe ja MySQL via. localhost etc. ich müsste dann (wahrscheinlich) einen Online (datenbanken?) Dienst dafür kaufen oder?

1
regex9  12.04.2023, 22:36
@Dicii

Schau direkt nach Webhosting-Anbietern, die dir sowohl Node.js-Support, als auch eine Datenbank (MySQL/MariaDB) in einem Paket zusichern. Da lassen sich durchaus einige Anbieter finden. Das gilt auch für die anderen oben genannten Optionen (Ruby, Python) oder (gerade) PHP.

2
NackterGerd  12.04.2023, 23:20
@Dicii

Eigentlich hätte PHP und csv vollkommen gereicht

Aber wenn du unbedingt SQL verwenden möchtest für die Speisekarte- ok

Eigentlich bekommt man bei jedem richtigen Anbieter SQL, Domain, Webspace, PHP und natürlich SSL ohne Extra Kosten

1

Hallo, ich kann dir bei deinem Problem nicht direkt helfen, aber ich hätte einen anderen Vorschlag, den ich persönlich viel praktischer fände. Und zwar würde ich die Speisekarte als PDF-Dokument gestalten. Dieses kannst du zum Beispiel so einbinden:

<object width=“…“ height=“…“ type=“application/pdf“ data=“PFAD/NAME.pdf“>

Ich sehe hier den Vorteil, dass du eine einfache Downloadmöglichkeit für die Benutzer hinzufügen kannst, damit sie die Speisekarte auch offline verwenden können oder verschicken können.

Ich weiß, dass diese Antwort nicht ganz deiner Frage entspricht, aber vielleicht hilft es dir ja weiter.

Woher ich das weiß:eigene Erfahrung