marcoborn
Goto Top

Abruf von Daten per JavaScript aus Datenbank

Hallo Forum,
ich möchte Datensätze im JSON-Format in HTML dynamisch einbinden. Abhängig von Parametern, die der Nutzer setzen kann, soll jeweils eine Teilmenge der Daten augezeigt oder deren Einstellungen verändert werden können.

Ich will gern auf PHP verzichten (da ich diese Sprache nicht beherrsche) und stattdessen nur mit HTML und JavaScript arbeiten. Da meine Daten alle in einer Tabelle mit vielen Spalten abgebildet werden können, bräuchte ich nicht unbedingt eine Datenbank, sondern könnte alles z.B. in einer CSV-Datei speichern. Alternativ kann ich auch alles in einer MySQL-Datenbank ablegen. Die Anwendung wird rein Daten auslesen und keine Daten zurückschreiben.

Meine Fragen dazu:
- Kann clientseitiges JavaScript überhaupt eine CSV-Datei direkt einlesen, die in einem Verzeichnis auf dem Websever abgelegt ist?
- Kann JavaScript mit einer Datenbank auf dem Webserver kommunizieren, ohne dass eine Sprache wie PHP zwischengeschaltet werden muss?
- Wäre die Nutzung einer DB oder von CSV-Dateien sinnvoller?
- Wo finde ich ggf. vernünftige Tutorials für die beiden Varianten?
- Gibt es ggf. weitere Aspekte, die ich beachten sollte?

Ich freue mich auf Eure Anregungen.

Vielen Dank im voraus
M. Born

Content-ID: 71456418416

Url: https://administrator.de/contentid/71456418416

Ausgedruckt am: 08.11.2024 um 21:11 Uhr

MirkoKR
Lösung MirkoKR 18.07.2024 aktualisiert um 13:20:07 Uhr
Goto Top
Hallo
Meine Fragen dazu:

- Kann clientseitiges JavaScript überhaupt eine CSV-Datei direkt einlesen, die in einem Verzeichnis auf dem Websever abgelegt ist?
JAIN.

- Kann JavaScript mit einer Datenbank auf dem Webserver kommunizieren, ohne dass eine Sprache wie PHP zwischengeschaltet werden muss?
Ja. - nodeJS, react

- Wäre die Nutzung einer DB oder von CSV-Dateien sinnvoller?
Meist DB, wie z.B. noSQL

- Wo finde ich ggf. vernünftige Tutorials für die beiden Varianten?
YouTube: https://m.youtube.com/results?sp=mAEA&search_query=nodeJS

Udemy: https://www.udemy.com/courses/search/?src=ukw&q=nodeJS

, heise, etc ...

- Gibt es ggf. weitere Aspekte, die ich beachten sollte?
JA
MarcoBorn
MarcoBorn 18.07.2024 um 14:39:01 Uhr
Goto Top
Hallo Mirko,
danke für Deine schnelle Antwort. Etwas mehr Details wären sicher hilfreich gewesen. Da ich das Ganze auf einem Server bei einem Webhoster laufen lassen will, ist als Webserver Apache und als DB MySQL vorgegeben. Daher fällt nodeJS und auch noSQL leider raus.
Hast Du ggf. noch ein paar mehr Anhaltspunkte/Stichworte, nach denen ich google kann?

Besten Dank,
M. Born
FreeAfterUseException
Lösung FreeAfterUseException 18.07.2024 aktualisiert um 17:21:43 Uhr
Goto Top
Moin,

wenn die Daten bereits im JSON-Format vorliegen und ihr keine Probleme damit habt, dass sie öffentlich (aus Perspektive des Aufrufers der Seite) zugänglich sind, reicht HTML/CSS/JS locker aus, um Deine Ziele zu erreichen - ob das der beste Weg ist, sei dahingestellt. Das Arbeiten mit JSON-Files ist aus Javascript-Sicht einfacher als CSV (ist ja JavaScript Object Notation).
Wenn die Daten nicht samt und sonders öffentlich zugänglich sein sollen, kommst Du um PHP o.Ä. nicht herum (was Du verwenden kannst, hängt vom Apache-Provider ab - der definiert, welche [Apache-]Module für eine dynamische Generierung verfügbar sind).
Ohne "richtige" DB hinter den Daten musst Du die Objekte selbst in Relation bringen und entsprechend filtern etc.
Dafür braucht man für die Entwicklung nicht mal 'nen richtigen Server; einfach HTML-, JS- und JSON-Files in ein Verzeichnis packen ("root" Deiner Site) und loslegen...läuft dann alles clientseitig ab (der Client lädt nur die HTML/CSS/JS/JSON-Dateien und macht den Rest lokal)

Viel Erfolg!
MarcoBorn
MarcoBorn 18.07.2024 um 17:40:41 Uhr
Goto Top
Hallo,
vielen Dank. Da das Ganze später im Internet verfügbar sein soll, kann auch auf die Daten der Datenbank bzw. der Files ohne Probleme lesend zugegriffen werden. Ich kann natürlich auch die ganzen Inhalte in 1 JSON-File statt der CSV packen. Da muss ich mir bei der Anzeige halt nur in JS Gedanken machen, wie ich dort die richtigen Einträge herausfiltere.

Besten Dank für Eure Anregungen
M. Born