Matthias Apsel: Formulare mit AJAX füllen

Om nah hoo pez nyeetz, alle!

Es gibt ein Formular, dessen Eintragungen in einer Datenbank gespeichert werden. Wenn dieses Formular erneut aufgerufen wird, sollen die Daten aus der DB ausgelesen werden und in das Formular eingetragen werden, damit der Nutzer sieht, welche Angaben er früher mal gemacht hat und diese ggf. ändern kann.

Wie stell ich das an?

Mit den Einzelkomponenten kann ich (einigermaßen) um. Von JS über PHP in MySQL klappt. Aus der DB auslesen ist auch nicht das Problem. Ebenso habe ich grundsätzlich verstanden wie man mit XMLHttpRequest() umgeht, aber eben nur grundsätzlich. Beispielsweise kann ich den Inhalt einer Text-Datei in ein entsprechendes HTML-Element hängen, aber für ein Formular (mit mehreren Formularfeldern) reicht es nicht.

Welche deutschsprachige Lektüre ist empfehlenswert?

Matthias

--
1/z ist kein Blatt Papier.

  1. Tach!

    Es gibt ein Formular, dessen Eintragungen in einer Datenbank gespeichert werden. Wenn dieses Formular erneut aufgerufen wird, sollen die Daten aus der DB ausgelesen werden und in das Formular eingetragen werden, damit der Nutzer sieht, welche Angaben er früher mal gemacht hat und diese ggf. ändern kann.

    Die jeweils zu füllenden Attribute (und Inhalt bei textarea) kennst du sicherlich.

    Wie stell ich das an?

    Du willst also für mehrere Elemente und in einem Request/Response Daten übertragen.

    Beispielsweise kann ich den Inhalt einer Text-Datei in ein entsprechendes HTML-Element hängen, aber für ein Formular (mit mehreren Formularfeldern) reicht es nicht.

    Die Textdatei mit Trennzeichen versehen und an diesen die Daten splitten wäre eine Möglichkeit. Aber für dieses Problem gibt es bereits eine Lösung: JSON. Damit kannst du die Daten auf der einen Seite ein- und der anderen wieder auspacken lassen.

    dedlfix.

    1. Om nah hoo pez nyeetz, dedlfix!

      Du willst also für mehrere Elemente und in einem Request/Response Daten übertragen.

      Genau, dies ist mein erster Versuch, das umzusetzen

      Aber für dieses Problem gibt es bereits eine Lösung: JSON. Damit kannst du die Daten auf der einen Seite ein- und der anderen wieder auspacken lassen.

      Danke für den Suchbegriff. Die haben "meinen" Kreis im Logo ;-)

      Matthias

      --
      1/z ist kein Blatt Papier.

  2. Hi,

    Es gibt ein Formular, dessen Eintragungen in einer Datenbank gespeichert werden. Wenn dieses Formular erneut aufgerufen wird, sollen die Daten aus der DB ausgelesen werden und in das Formular eingetragen werden, damit der Nutzer sieht, welche Angaben er früher mal gemacht hat und diese ggf. ändern kann.

    Wie stell ich das an?

    ohne AJAX. Liefere das Formular befüllt an den Nutzer.

    Welche deutschsprachige Lektüre ist empfehlenswert?

    Beispielsweise "Der Zeitdieb" von Terry Pratchett.

    Cheatah

    --
    X-Self-Code: sh:( fo:} ch:~ rl:| br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
    X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
    X-Will-Answer-Email: No
    X-Please-Search-Archive-First: Absolutely Yes
    1. Om nah hoo pez nyeetz, Cheatah!

      ohne AJAX. Liefere das Formular befüllt an den Nutzer.

      eine Option, an die ich nicht gedacht habe, wahrscheinlich macht es die Sache deutlich einfacher. Werde ich probieren.

      Beispielsweise "Der Zeitdieb" von Terry Pratchett.

      Scheint dein Lieblingsautor zu sein. Würde ich mich jetzt beruflich mit dem Thema AJAX umherschlagen müssen (wäre ich wahrscheinlich sicherer im Umgang damit), nähme ich das als Hinweis, in der Freizeit zu entspannen.

      Matthias

      --
      1/z ist kein Blatt Papier.

      1. Hi,

        Beispielsweise "Der Zeitdieb" von Terry Pratchett.
        Scheint dein Lieblingsautor zu sein.

        er ist - zumindest seit René Goscinny nicht mehr lebt. Uderzo kriegt einfach keine Story hin.

        Würde ich mich jetzt beruflich mit dem Thema AJAX umherschlagen müssen (wäre ich wahrscheinlich sicherer im Umgang damit), nähme ich das als Hinweis, in der Freizeit zu entspannen.

        Nicht nur Reinigungsfachkräfte müssen ab und zu entspannen ;-)

        Cheatah

        --
        X-Self-Code: sh:( fo:} ch:~ rl:| br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
        X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
        X-Will-Answer-Email: No
        X-Please-Search-Archive-First: Absolutely Yes
      2. ohne AJAX. Liefere das Formular befüllt an den Nutzer.
        Werde ich probieren.

        Danke, passt.

        Beispielsweise "Der Zeitdieb" von Terry Pratchett.

        Scheibenwelt kommt jetzt auf meine Wunschliste. Zumindest mal reinschnuppern.

        Matthias

        --
        1/z ist kein Blatt Papier.

    2. Hi,

      Welche deutschsprachige Lektüre ist empfehlenswert?

      Beispielsweise "Der Zeitdieb" von Terry Pratchett.

      TP ist im Original viel empfehlenswerter.

      MfG ChrisB

      --
      RGB is totally confusing - I mean, at least #C0FFEE should be brown, right?
      1. Hi,

        Welche deutschsprachige Lektüre ist empfehlenswert?
        Beispielsweise "Der Zeitdieb" von Terry Pratchett.
        TP ist im Original viel empfehlenswerter.

        ohne Zweifel. Das erfüllt allerdings nicht die Anforderungen, da Pratchetts Werke im Original nicht deutschsprachig sind ;-)

        Cheatah

        --
        X-Self-Code: sh:( fo:} ch:~ rl:| br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
        X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
        X-Will-Answer-Email: No
        X-Please-Search-Archive-First: Absolutely Yes
  3. hi,

    Es gibt ein Formular, dessen Eintragungen in einer Datenbank gespeichert werden. Wenn dieses Formular erneut aufgerufen wird, sollen die Daten aus der DB ausgelesen werden und in das Formular eingetragen werden, damit der Nutzer sieht, welche Angaben er früher mal gemacht hat und diese ggf. ändern kann.

    Sehr benutzerfreundlich!

    Wie stell ich das an?

    Deine Anwendung möchte sich an den Benutzer erinnern können. Wie wärs mit einem Keks?

    Hotti

    --
    Ohne Arme: Keine Kekse!
    1. Om nah hoo pez nyeetz, hotti!

      Deine Anwendung möchte sich an den Benutzer erinnern können. Wie wärs mit einem Keks?

      Ja, auch das wäre möglich. Bleibt aber, falls der Nutzer das Cookie löscht (oder ändert), wieder der Weg, das Formular gleich ausgefüllt auzuliefern. Da kann ich es auch in jedem Fall ausgefüllt ausliefern.

      Stellt sich die Frage nach ggf. überflüssigen Anfragen vs. Manipulierbarkeit.

      Matthias

      --
      1/z ist kein Blatt Papier.

      1. hi,

        Ja, auch das wäre möglich. Bleibt aber, falls der Nutzer das Cookie löscht (oder ändert), wieder der Weg, das Formular gleich ausgefüllt auzuliefern. Da kann ich es auch in jedem Fall ausgefüllt ausliefern.

        Irgendwie muss sich der Benutzer zu erkennen geben, damit seine letzte Eingabe rekonstruiert werden kann.

        Stellt sich die Frage nach ggf. überflüssigen Anfragen vs. Manipulierbarkeit.

        Ja, die Frage steht auf jeden Fall. Wahrscheinlich wird der Benutzer was eingeben müssen, was nur er selbst kennt, z.B. Benutzername/Passwort.

        Hotti