Hallo,
Folgende Situation:
Ein Formular wird per Submit gepostet und verarbeitet.
Danach sieht der Anwender einen Bestätigungsdialog.
Nun soll verhindert werden, dass, wenn der Benutzer den Zurückbutton des Browsers anklickt, der Verarbeitungsprozess der POST-Daten erneut abläuft.
Doppelter Redirect funktioniert nicht, da der Browser die Seiten nicht im Verlauf speichert. Man kann sogar beliebig oft redirecten, es macht keinen Unterschied. Egal, ob per Header oder location.href.
Redirect geht so:
POST->Redirect->Bestätigung
Wenn man nun von der Bestätigung zurückgeht, sollte man auf der Redirect-Seite landen und von dort wieder zur Bestätigung geleitet werden. Der Browser, egal ob Firefox oder IE, geht aber von der Bestätigung direkt wieder zur POST-Seite.
Zweiter Ansatz war, eine SESSION zu benutzen, die vor dem erneuten Posten der Daten, überprüft wird und die WeiterleitungsURL beinhaltet. Ging auch nicht, OLOL.
Wisst ihr Rat?
Folgende Situation:
Ein Formular wird per Submit gepostet und verarbeitet.
Danach sieht der Anwender einen Bestätigungsdialog.
Nun soll verhindert werden, dass, wenn der Benutzer den Zurückbutton des Browsers anklickt, der Verarbeitungsprozess der POST-Daten erneut abläuft.
Doppelter Redirect funktioniert nicht, da der Browser die Seiten nicht im Verlauf speichert. Man kann sogar beliebig oft redirecten, es macht keinen Unterschied. Egal, ob per Header oder location.href.
Redirect geht so:
POST->Redirect->Bestätigung
Wenn man nun von der Bestätigung zurückgeht, sollte man auf der Redirect-Seite landen und von dort wieder zur Bestätigung geleitet werden. Der Browser, egal ob Firefox oder IE, geht aber von der Bestätigung direkt wieder zur POST-Seite.
Zweiter Ansatz war, eine SESSION zu benutzen, die vor dem erneuten Posten der Daten, überprüft wird und die WeiterleitungsURL beinhaltet. Ging auch nicht, OLOL.
Wisst ihr Rat?
Kommentar