• Das Erstellen neuer Accounts wurde ausgesetzt. Bei berechtigtem Interesse bitte Kontaktaufnahme über die üblichen Wege. Beste Grüße der Admin

Allgemeine Fragen, Interaktive Fragen

Venjirai

New member
Hallo Leute,

Ich müsste ein Projekt mithilfe von Html und Javascript realisieren, und habe dazu einige Fragen.
Es soll eine interaktive Karte werden.
Öffnet man die Seite, sieht man eine Karte, mit orangen und grünen Punkten (2 Bilder für die Punkte + Karte).
Diese Punkte sollen einen bestimmten Text anzeigen, wenn man mit der Maus drüberfährt oder sie anklickt, kann aber für jeden Punkt verschieden sein.
Der Text und die Farbe des Punktes (Grün/Orange) sollte von einem Administrator direkt auf der Homepage verändert werden können, und muss dauerhaft gespeichert bleiben.
Die Punkte muss man frei verschieben, löschen und neu erstellen können.
Der User sieht also nur diese Punkte, und den Text den der Administator erstellt hat.
Den Administator könnte man mit einem hardgecodeden Passwort anlegen, meine Fragen sind aber:

Brauch ich für die Speicherung der Position der Punkte und des Text eine Datanbank wie z.B. MySQL oder kann ich mithilfe von Javascript eine Textdatei auf dem Server verändern, von der diese Information ausgelesen wird?

Ist sowas mit Javascript realisierbar, oder muss ich dafür zu Flash greifen?

Erfahrung mit php und mysql hab ich, weil ich damals einen Internet Shop programmieren musste (In 4 Tagen).
Das Wissen ist zwar schon wieder verloren, bin aber ein schneller Lerner.
Könnt ihr mir Tutorials empfehlen, die dieses Thema beinhaltet?

Vielen Dank!
 
Ineraktive Karten selber machen? Davon würde ich erstmal abraten, sondern mir mal OpenStreetMap oder die Google Maps API anschauen. Alles gut dokumentiert mit vielen Beispielen.
Javascript läuft Clientseitig, also im Browser. Du kannst also mit JS im Gegensatz zu PHP keine Dateien direkt auf dem Server verändern. Du kannst jedoch Informationen übertragen (z.B. mit AJAX), die dann auf dem Server verarbeitet werden.
Sonst klingt das machbar, wie ich das grob überblicke.
 
Wieso würdest du mir davon abraten?
Würde es schon gern selbst programmieren.
Scheint ja eigentlich recht simpel zu sein, in C# programmier ich das in einer halben Stunde. :)
Ist es mit Javascript, HTML, PHP, und MYSQL wirklich so kompliziert?
Erfahrung mit PHP und MYSQL habe ich wie gesagt, schon gemacht.
Was ich noch brauche, ist eine Anleitung oder ein Tutorial in dem behandelt wird, wie man Bilder auf einem anderen Bild platziert und diesem Eigenschaften zuordnet, sowie auf der Homepage verändert werden kann.

Grüße
 
Hallo Leute,

Brauch ich für die Speicherung der Position der Punkte und des Text eine Datanbank wie z.B. MySQL oder kann ich mithilfe von Javascript eine Textdatei auf dem Server verändern, von der diese Information ausgelesen wird?

Ist sowas mit Javascript realisierbar, oder muss ich dafür zu Flash greifen?

Speichern kannst du, wie bereits erwähnt wurde, via JS vergessen... (Server / Client)

Realisieren kannst du es relativ simple über eine einfache Datei...

Werkzeuge die dir PHP dafür zur Verfügung stellt:

- file_get_contents, file_put_contents

- json_decode, json_encode
oder
- serialize und unserialize


Sollte es aber in die Richtung gehen, dass die Komplexität der Datenstruktur zunimmt,
wäre eine DB allein schon wegen Les- und Wartbarkeit zu empfehlen...
 
Hallo Venjirai,

Respekt was du in einer halben Stunde alles so hinkriegst ;)

Für dein Problem gibt es mehrere Lösungen; traditionell kannst du die Kombo JS-PHP-MySQL nehmen: Eine MySQL Datenbank auf dem Server, ein PHP-Script, das deine Anfragen verarbeitet und ein clientseitiges Javascript das jeweils Position/Farben der Punkte via AJAX/POST Requests an das Script übermittelt. Oder natürlich statt MySQL einfach eine Textdatei, Datenbanken sind nie ein Muss.

Alternativ kannst du auch alles mit Javascript machen; hierzu benötigst du einen Node.js-Server, den du mit Javascript aufsetzt. Mit dem kannst du dann auch wie mit einem PHP-Server über AJAX-Calls/POST Requests kommunizieren oder benutzt gleich (da Node.js), die Websocket-Bibliothek socket.io.

Weiss auch nicht genau, auf was deine Frage abzielt aber summa summarum: Kompliziert ist es nicht, das aufwändigste ist der Client. Auf der Serverseite ist es egal mit welcher Technologie du rangehst eigentlich das gleiche; Punkt-Koordinaten entgegennehmen und speichern.
Wieviel Arbeit die Clientseite macht liegt natürlich bei dir, wie gut du das Interface gestalten willst.

jspit hat hier schon eine gute Referenz geliefert - jQuery (zusammen mit jQuery UI, für Draggable) erleichtert sicher einiges.

Du kannst dir aber die Arbeit noch weiter erleichtern mit der Google Maps API (https://developers.google.com/maps/?hl=de). Die übernimmt klassische Kartenprobleme (zoom, pan, etc.) für dich und unterstützt sogar eigene Layers (auf welchen du deine Punkte speichern könntest) und natürlich eigenes Kartenmaterial.

Vielleicht fängst du einfach mal an und fragst bei Fragen hier nochmals :)

Grüsse
dominique

PS: Du brauchst definitiv kein Flash.

PPS: Schau dir vielleicht noch SVG bzw. die Raphael.js Bibliothek an, damit kann man auch sehr viel tolle Sachen machen und ich denke für dein Projekt (so wenig wie du bis jetzt verraten hast) wären interaktive SVG-Karten genau das richtige.

PPPS: all die links...:

http://de.wikipedia.org/wiki/Ajax_(Programmierung)
http://nodejs.org/
http://socket.io/
http://jquery.com/
http://jqueryui.com/
(Google Maps API im Text)
http://raphaeljs.com/
 
Zurück
Oben