Javascript live
tHeMUUrd3r
- javascript
0 Struppi0 murder
0 Vinzenz Mai0 Jeena Paradies0 Vinzenz Mai0 FraFu
Abend,
Ich möchte mir ein Javascript basteln, dass mit Daten aus ein mysql Datenbank arbeitet und und von zeit zu zeit überprüft ob die Daten geändert wurden und die Neuen dann im Script einbaut.
Ich hätte dafür folgenden Ansatz: Das Javascript ruft nach ein bestimmten zeit ein php-Script auf das überprüft ob sich etwas geändert hat, und gegebenenfalls die geänderten Daten an das Javascript weitergeben.
Nun scheint mir dieser Ansatz etwas umständlich, hätte vielleicht jemand eine andere Idee?
Danke schon jetzt
mfg
murder
Ich hätte dafür folgenden Ansatz: Das Javascript ruft nach ein bestimmten zeit ein php-Script auf das überprüft ob sich etwas geändert hat, und gegebenenfalls die geänderten Daten an das Javascript weitergeben.
Nun scheint mir dieser Ansatz etwas umständlich, hätte vielleicht jemand eine andere Idee?
Dein Ansatz, nennt sich heutzutage Web 2.0 bzw. eine Technik die mit diesem Buzzword populär wurde, AJAX. Einfacher geht sowas nicht. Du kennst phpmyadmin? Das hat zwar nicht mit deinem Ansatz geinsam, aber daran kannst du erkennen, was für ein Aufwand das ist, was du da umsetzen möchtest, auch ohne AJAX.
Struppi.
Danke
für die Antworten.
Werde mir Ajax mal aneignen. ;)
Hallo,
Ich möchte mir ein Javascript basteln, dass mit Daten aus ein mysql Datenbank arbeitet und und von zeit zu zeit überprüft ob die Daten geändert wurden und die Neuen dann im Script einbaut.
Ich hätte dafür folgenden Ansatz: Das Javascript ruft nach ein bestimmten zeit ein php-Script auf das überprüft ob sich etwas geändert hat, und gegebenenfalls die geänderten Daten an das Javascript weitergeben.
Nun scheint mir dieser Ansatz etwas umständlich,
wieso? Schauen wir uns die Einzelproblemchen mal an:
Frage: kann clientseitiges Javascript direkt auf serverseitige Datenbanken
zugreifen.
Antwort: Nein, dazu benötigt man eine serverseitige Technik
Frage: Wann schickt ein Webserver Daten an einen HTTP-Client (wie einen
Browser)
Antwort: Wenn der Browser Daten anfordert.
Frage: Kann der Server diese Daten nicht einfach so senden (Server-Push).
Antwort: Nein.
Frage: Hat Javascript die Möglichkeit, in regelmäßigen Abständen Daten vom
Server anzufordern (Client-Pull).
Antwort: Ja, zum Beispiel mit http://de.selfhtml.org/javascript/objekte/window.htm#set_interval@title=setInterval().
Frage: Wer besorgt die Daten.
Antwort: Ein serverseitiges Skript, zum Beispiel in PHP.
Frage: Wer verarbeitet die Daten zur Aktualisierung der Browserdarstellung.
Antwort: Javascript.
Frage: Wie willst Du Dein Problem anders lösen - außer mit einem neuen
Seitenaufruf? Erscheint Dir Dein Ansatz immer noch umständlich?
Freundliche Grüße
Vinzenz
Hallo,
Frage: kann clientseitiges Javascript direkt auf serverseitige Datenbanken
zugreifen.
Antwort: Nein, dazu benötigt man eine serverseitige Technik
Die Antwort ist so schon mal völlig falsch. Natürlich gibt es Datenbanken auf die man direkt mit clientseitigem JavaScript zugreifen kann, siehe als wohl bekanntestes Beispiel CouchDB (interessante Zusammenfassung)
Frage: Wann schickt ein Webserver Daten an einen HTTP-Client (wie einen
Browser)
Antwort: Wenn der Browser Daten anfordert.
Das stimmt so auch nicht, es gibt Methoden eine Verbindung zum Server zu öffnen und dann kann der server wenn irgend etwas passiert die Daten zum Browser schicken und dieser nimmt sie dann entgegen und verarbeitet sie. Mehr Info: Server-Sent Events (und hier im html5 working draft)
Frage: Kann der Server diese Daten nicht einfach so senden (Server-Push).
Antwort: Nein.
Falsch, doch, siehe Punkt vorher.
Frage: Wer besorgt die Daten.
Antwort: Ein serverseitiges Skript, zum Beispiel in PHP.
Oder die DB spuckt sie direkt sinnvoll aus, siehe Punkt 1.
Frage: Wie willst Du Dein Problem anders lösen - außer mit einem neuen
Seitenaufruf? Erscheint Dir Dein Ansatz immer noch umständlich?
Siehe oben, es gibt noch viel umständlichere Wege ;)
Jeena
Hallo Jeena,
ich weiß, ich hab vergessen hinzuschreiben:
Dies gilt für heute übliche Randbedingungen (apache, lightppd, IIS oder ähnliches + MySQL, PostgreSQL, MS SQL-Server oder ähnliches), wie man es bei jedem Provider um die Ecke derzeit vorfindet - und was mit den heute anzutreffenden Browsern (inklusive IE) robust funktioniert.
Freundliche Grüße
Vinzenz
Hallo!»» Hallo,
Die Antwort ist so schon mal völlig falsch. Natürlich gibt es Datenbanken auf die man direkt mit clientseitigem JavaScript zugreifen kann, siehe als wohl bekanntestes Beispiel CouchDB (interessante Zusammenfassung)
Scheint auf den ersten Blick eine tolle Sache zu sein. Danke für den Link, kannte ich noch nicht. Hast du schon Erfahrung mit dem Ding?
mfg
frafu
Hallo,
Scheint auf den ersten Blick eine tolle Sache zu sein. Danke für den Link, kannte ich noch nicht. Hast du schon Erfahrung mit dem Ding?
Ich persönlich nicht wirklich, aber Jan aus #selfhtml ist da einer der Entwickler.
Jeena