Tim Tepaße: AJAX: Formular in Echtzeit speichern

Beitrag lesen

Hallo,

die user haben sich nun beschwert, dass wenn sie aus unachtsam nicht den speicher-button dedrückt hatten und auf eine andere site gewechselt haben, dass alle daten dann natürlich verloren sind/sprich ja nicht gespeichert.

Recht doofe User, wenn Du mich fragst.

Derzeit wird eine Javascript-Technik namens AJAX recht gehypt. Im wesentlichen ist das nichts neues, neu ist nur, dass man in den großen Browsern das Objekt XMLHttpRequest zur Verfügung hat, mit dem man HTTP-Requests absetzen und das Ergebnis wieder empfangen kann. Das eignet sich durchaus für Speichern im Hintergrund.

Realisieren könntest Du das z.b. in dem Du mit dem Event-Handler onblur darauf achtest, ob ein Formularfeld verlassen (sprich: ausgefüllt) wurde. Dann wird im Hintergrund mittels Javascript ein HTTP-Request mit dem Inhalt des Feldes abgesetzt. Auf der Serverseite bräuchtest Du dann entsprechende reduzierte PHP-Funktionen, die auch bei Bedarf Fehlermeldungen zurückgeben, die Dein Javascript dann dem HTTP-Request entnehmen und in die Seite einmontieren. Zwei Dinge solltest Du beachten:

Visuelle Rückmeldungen sind trotzdem wichtig. Insbesondere eine Art Statusmeldung bei den Formularfeldern, reiner Text oder Icons („Fehler“, „wird gespeichert“, „gespeichert“). Auch wenn Deine Benutzer es nicht gewohnt zu sein scheinen, viele haben sich an das Web und die klassische Formularbedienungsweise gewöhnt. Es sollte schon offensichtlich sein, dass das Formular automatisch dafür sorgt, dass die Eingaben gespeichert werden.

Und natürlich der klassische Hinweis: Man sollte niemals das Vorhandensein von Javascript voraussetzen, d.h. Dein Formular sollte auch ohne JS funktionstüchtig sein. Es böte sich an, erst ein klassisches Formular zu entwickeln (hast Du ja schon) und dann bei window.onload (und dem Feststellen, dass die für AJAX benötigten Funktionen & Objekte vorhanden sind) das Formular ajaxifizieren, z.b. den nun nicht mehr benötigten Submit-Button vorsichtig aus dem Dokument raus zu operieren.

Automagisch speichernde Formulare gehören mit zu den beliebtesten Dingen des derzeitigen AJAX-Hypes, da gibt es inzwischen einige Beispiele dazu. Der oben verlinkte Wikipedia-Artikel hat Links, wenn Du denen folgst, dürftest Du bestimmt fündig werden.

Tim