Korinthia: Effekt von Seite neu laden

Moin,
ich möchte eine Homepage erstellen mit Kontaktformular.
Dazu habe ich bei vielen Firmen im Internet deren Formulare studiert.
Dabei ist mir einmal folgendes passiert:
Ich habe in ein Feld einen unzulässigen Wert eingegeben. Nach drücken des Sende-Felds kam ein Fenster, der den Fehler meldete und das fehlerhafte Feld war markiert. Jetzt wollte ich die Eingaben löschen. Dafür habe ich (irrtümlicherweise?) F5 gedrückt. Jetzt kam das gleiche Fenster, wobei der Wert noch vorhanden war. Nach Drücken des Sende-Felds wurde das Formular abgesandt.
Dies hat mich veranlasst, genau diese Folge auch bei anderen Formularen durchzuführen.
Mit folgendem Ergebnis:
In einem Fall war der Wert ebenfalls noch vorhanden aber beim Absenden kam wieder der Fehler.
In einem anderen Fall waren meine Eingabefelder gelöscht.
In allen Fällen habe ich die Abfrage "Wollen Sie   ... erneut senden".

Dabei war das Verhalten, glaube ich, auch abhängig von dem Browser, den ich verwendet habe.
Das habe ich aber dummerweise nicht genau registriert.

Vielleicht könnt Ihr mir trotzdem folgende Fragen beantworten.

Ist die Funktion F5 (Seite neu laden) bei den gängigen Browsern unterschiedlich?
Kann man die Wirkung der Taste bzw. des Reload Icons in den Browsern selbst einstellen?
Erfolgt das Neuladen der Seite
 1. an dem Computer vor Ort oder
 2. auf dem Server im Internet?
Kann man die ausgelöste Funktion (reload)
    im Falle 1 mit einer Skriptsprache bzw.
    im Falle 2 mit PHP oder Perl
beeinflussen?
Welches Verhalten ist nach Eurer Meinung das beste?
Schöne Grüße aus Köln
Korinthia

  1. Yerf!

    Ist die Funktion F5 (Seite neu laden) bei den gängigen Browsern unterschiedlich?

    Ja. Firefox neigt dazu sich Benutzereingaben zu merken und diese nach dem neu Laden wieder einzufügen (auch bei einem Submit der wieder auf die gleiche Seite führt).

    Kann man die Wirkung der Taste bzw. des Reload Icons in den Browsern selbst einstellen?

    Evtl. hab da noch nicht näher geschaut. Wenn dann irgendwo unter den Caching-Optionen.

    Erfolgt das Neuladen der Seite

    1. an dem Computer vor Ort oder
    2. auf dem Server im Internet?

    Das hängt vom Caching des Browsers ab.

    Kann man die ausgelöste Funktion (reload)
        im Falle 1 mit einer Skriptsprache bzw.
        im Falle 2 mit PHP oder Perl
    beeinflussen?

    Man kann Empfehlungen geben. Dazu dient vor allem der HTTP-Header Cache-Control. no-cache für die geasamte Seite nicht cachen und no-store für eingegebene Werte nicht merken (ist auch kombinierbar).

    Welches Verhalten ist nach Eurer Meinung das beste?

    Hängt von der jeweiligen Seite ab würde ich jetzt sagen. Meistens dürfte ein Speichern der Formulardaten für den Benutzer angenehmer sein, aber ich hatte auch schon Fälle, bei denen das völlig am Ziel vorbeischoss, da die neu geladene Seite außer der URL nichts mit der vorherigen gemeinsam hatte.

    Gruß,

    Harlequin

    --
    <!--[if IE]>This page is best viewed with a webbrowser. Get one today!<![endif]-->
  2. Hallo,

    Ist die Funktion F5 (Seite neu laden) bei den gängigen Browsern unterschiedlich?

    sagen wir's so: Die Defaulteinstellungen sind vielleicht unterschiedlich. Grundsätzlich ist das Verhalten aber von der Browserkonfiguration abhängig, nicht so sehr davon, welcher Browser verwendet wird.

    Kann man die Wirkung der Taste bzw. des Reload Icons in den Browsern selbst einstellen?

    Ob das in allen geht, weiß ich nicht; im IE auf jeden Fall. In der Grundeinstellung versucht er, wenn möglich, die Seite aus dem Cache zu laden. Kommt er zu dem Schluss, dass das geht, neigt er dazu, auch die Formulareingaben wiederherzustellen. Wenn er aber die Seite neu vom Server anfordern muss, sind auch die Formularelemente zurückgesetzt.

    Erfolgt das Neuladen der Seite

    1. an dem Computer vor Ort oder
    2. auf dem Server im Internet?

    Die Frage verstehe ich nicht ganz. Das Neuladen der Seite wird natürlich erstmal vom Client, dem Browser, veranlasst. In der Regel schließt das aber einen Request zum Server mit ein.

    Kann man die ausgelöste Funktion (reload)
        im Falle 1 mit einer Skriptsprache bzw.
        im Falle 2 mit PHP oder Perl
    beeinflussen?

    PHP und Perl sind auch Scriptsprachen. ;-)
    Aber ja, damit hat man eine Chance, zumindest cache-willige Browser davon abzuhalten. Umgekehrt, also den Browser gegen seinen "Willen" zu cachen der Seite auffordern, dürfte es wohl kaum möglich sein.

    Welches Verhalten ist nach Eurer Meinung das beste?

    Wenn ich die Seite beim Reload (F5) oder beim Zurück (Backspace) wieder jungfräulich und frisch vor mir habe. Das ist IMHO der Sinn dieser Browser-Funktionen.

    So long,
     Martin

    --
    You say, it cannot be love if it isn't for ever.
    But let me tell you: Sometimes, a single scene can be more to remember than the whole play.