mkoessling
Goto Top

Formularfelder bei Zurück Button nicht löschen

Hallo zusammen,

ich habe bei einer Anwendung mit PHP und mySQL das Problem, dass die Inhalte der Formularfelder einer PHP Seiten beim betätigen des "Zurück Buttons" vom Browser gelöscht werden (Firefox lädt die Seite bei Zurück komplett neu).
Das ist besonders ärgerlich, wenn man falsche oder fehlende Angaben auf der Formularseite eingetragen hat und diese einfach durch "Zurück" korrigieren möchte. Die Anwendung basiert auf Apache 2.2.14, PHP 5.3.1 und mySQL 5.1.41 und läuft auf Windowx XP.
Ich meine, ich hätte dieses Problem schon mal vor Jahren mit einem Eintrag in der httpd.conf lösen können. Leider habe ich bis jetzt nichts brauchbares finden können.
Habt Ihr viellecht eine Idee, wie man das Problem lösen können?
Einen weiteren Link auf der Seite, um auf die vorherige Seite zu gelangen, möchte ich vermeiden. Es sollte mit dem "Zurück Button" des Browsers funktionieren.


mfg
Michael

Content-Key: 149736

Url: https://administrator.de/contentid/149736

Ausgedruckt am: 28.03.2024 um 19:03 Uhr

Mitglied: Arano
Arano 25.08.2010 um 20:10:48 Uhr
Goto Top
Moin moin.

Das ist normal, der Browser ruft auch nur die Adresse wo man vorher war erneut auf.

Speicher die Daten doch temporär in einem Cookie oder einer Session. Beim Aufruf JEDER Formularseite prüfst du dann ob der Cookie/Session existiert und ob entsprechende Daten vorhanden sind die dann ggf. schon voreingetragen werden können... und jetzt kommt das aber:

ABER: Du spricht im Beispiel von einer einfachen Korrektur/Ergänzung, das heisst vermutlich das auf der aktuellen Seite bereits eingaben gemacht wurden sind ! Wenn du nun zurück gehst sind sind schon mal die aktuellen Eingaben verloren ! Jetzt korrigierst du deine falschen Daten und dann... ja, was dann ? Wirst du nun auf den Vorwärts-Button des Browsers klicken, hattest ja auch den Zurück-Button benutzt (die Korrekturen gehen verloren) oder wirst du über den Submit-Button weitermachen ?

Müssen es denn Seiten sein ?
Sind all diese Eingaben wirklich nötig ?
Mitglied: mkoessling
mkoessling 25.08.2010 um 20:39:43 Uhr
Goto Top
Noch mal zur Erläuterung der Anwendung:

Es gibt eine Seite "Liefertermin erstellen", in der man alle relevanten Daten für den Termin eingibt. Anschließend drückt man einen "Submit" Button um auf die Bestätigungsseite zu gelangen, dass alles Daten gespeichert wurden.
Falls aber ein Pflichtfeld nicht ausgefüllt worden ist oder man eine Eingabe korrigieren möchte, sollte man über den "Zurück Button" des Browsers auf der vorherigen Seite seine Eingaben ändern können.

Wie schon gesagt, es hat mal auf einem Server funktioniert. Und ich bin mir sicher, dass es nur eine Konfigurationssache von Apache ist.
Mitglied: Arano
Arano 25.08.2010 um 21:04:41 Uhr
Goto Top
Hi,

ach so !

Wie schon gesagt, es hat mal auf einem Server funktioniert. Und ich bin mir sicher, dass es nur eine Konfigurationssache von Apache ist.
Definitiv nein !
Weil, ich habe meinen Browser so Konfiguriert das keine Formulardaten gespeichert werden.

Formular abschicken: PHP prüft die Eingaben, bei fehlen relevanten Daten wird das Formular erneut angezeigt (z.B. per include), Daten befinden sich noch in $_POST oder werden "schnell" in einem Cookie oder einer Session zwischengespeichert und beim erneuten Anzeigen des Formulars eingefügt.
Übersicht: Alle Eingaben in versteckten Formularfeldern einfügen (oder Cokkie/Session) und den Submit-Button="Daten ändern" __anzeigen__. Beim anklicken wird das Formular abgeschickt wo durch die Daten wieder in $_POST liegen und in dem wiedereinmal angezeigtem Formular eingefügt werden.

Kreislauf fertig face-smile

~Arano
Mitglied: mkoessling
mkoessling 25.08.2010 um 21:57:57 Uhr
Goto Top
Mit dem Internet Explorer funktioniert es aber, nachdem man folgende Zeile in die httpd.conf eingefügt hat:

BrowserMatch MSIE force-no-vary