Rolf B: Dokument erloschen Problem

Beitrag lesen

Hallo tsunami,

ich habe deinen Code ein bisschen formatiert. Dein HTML ist allerdings gruselig.

  • Das ist keine Überschrift. <h*> Elemente nur wegen der damit verbundenen Default-Styles zu verwenden ist nicht korrekt.
  • Abstände definiert man im CSS per Margin. Nicht per <br><br><br>. Brrrr.
  • Das Nachprogrammieren von Browserfunktionen ist nicht sinnvoll. Der Zurück-Button ist schon da Sorry, in einer Fullscreen-Anwendung ist das was anderes.
  • &uuml; & Co sind bei korrekt verwendeter Codierung im Sourcecode überflüssig. UTF-8 ist das Encoding des Web.

Dein Problem resultiert aus einem cache-limiter, der dynamisch erzeugte Seiten clientseitig cached. Das ist grundsätzlich untauglich. GET Requeste werden vom Browser (oder einem zwischengelagerten Proxy) zwischengespeichert, weil es zur Semantik von GET gehört, dass die gelieferten Daten stabil bleiben. Wenn Du aber Daten anzeigst, die sich von einem Abruf zum anderen ändern können, darfst Du nicht cachen.

Die richtige Lösung ist der Verzicht auf Caching und der Einsatz des PRG-Pattern - d.h. Posts ändern lediglich die Datenbank und enden dann mit einem Redirect. Die Anzeige erfolgt ausschließlich im GET. Für den Redirect nimmt man häufig den HTTP Status 302 (Found) - die 303 (See Other) ist aber auch sinnvoll.

Rolf

--
sumpsi - posui - obstruxi