Martin F.: Weiterleitung, welche Statuscodes?

Beitrag lesen

Moin,

zumindest unter Firefox erscheint die Meldung trotz der Verwendung des Statuscodes!?

Ich muss mich korrigieren: Die Verwendung des Statuscodes 303 verhindert die Meldung, aber nur dann, wenn danach eine Weiterleitung erfolgt. Kann ich die Meldung auch verhindern, wenn keine Weiterleitung erfolgt?

Hm? Der Status 303 ist für Weiterleitungen.

Beispiel:
Ein Formular, das bei falscher Eingabe eine Fehlermeldung und das Formular noch einmal ausgibt. Angenommen, der Benutzer macht wieder eine falsche Eingabe, die Fehlermeldung mit Formular erscheint, und er betätigt dann den Zurück-Button. Es erscheint die Meldung. Wie kann ich auch in diesem Fall die Meldung verhindern?

Wenn du meinst, es ist nötig (der Benutzer könnte ja auch im neuen Formular die Daten ändern), könntest du im Fehlerfall auf das Skript verweisen, das das Formular erneut ausgibt und die Werte aus den GET-Parametern übernimmt. Hierfür müsstest du dann alle POST-Variablen in der Weiterleitung an die URL anhängen. Beachte dabei jedoch, dass GET-Requests keine Aktionen wie z. B. die Manipulation eines Datensatzes auslösen sollte, speichern solltest du also nur dann, wenn der Zugriff über POST erfolgte. So wie bisher halt auch.

Tschau,
Martin