Sönke Tesch: Problem Warenkorb vor/zurück?!?

Beitrag lesen

Artikel werden über mehrere <form> in den Warenkorb/tabelle gelegt....über eine variable z.B. option wird erkannt daß der artikel in die Tabelle gelegt werden muß.

Was für eine Variable? Wieso "zum Beispiel"? Und woher bekommt die Variable ihren Inhalt? Oder meinst Du ein Element des Formulars oder einen Parameter in der URL?

Ein wenig Einblick in den Quelltext hätte (wie so oft) sehr viel geholfen, mehr als jede Erklärung.

nun habe ich aber das problem, daß man sobald man den zurück button beim IE/NS/OP drückt und dann wieder nach vorne logischerweise den artikel doppelt in der Tabelle hat.

So logisch ist das nicht. In der Regel wird man heutzutage von den Browsern gewarnt, bevor man ein Formular zweimal abschickt.

wie lässt sich sowas am besten verhindern?

Das kommt darauf an, wie Du den In-den-Warenkorb-legen-Vorgang durchführst (siehe option-Problem oben).

Falls Du ein echtes Formular benutzt, kannst Du doppeltes Absenden dadurch verhindern, daß Du jedem Formular eine eindeutige Seriennummer gibst. Für jedes vom Benutzer abgeschickte Formular speicherst Du diese Seriennummer in einer Liste. Mehrmals abgeschickte Formulare erkennst Du daran, daß die mitgelieferte Seriennummer bereits in Deiner Liste enthalten ist.
Dieses Prinzip wird übrigens hier im Forum benutzt.

Bei Deinem speziellen Problem eines Kataloges hilft Dir allerdings eine andere Methode etwas besser: Als Antwort auf ein empfangenes Formular sendest Du statt einer normalen Katalogseite eine Weiterleitung mit dem Code 303 zur gewünschten Katalogseite. 303 ist extra für POST-Skripte gedacht, die selbst keine ausführlich Antwort zur Verfügung stellen. Siehe http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.3.4.
Soweit mir bekannt, sollte damit das Blätterproblem beseitigt sein, da der Browser die POST-Antwort nicht im Cache behält, sondern lediglich die Seite, auf die weitergeleitet wurde.

Gruß,
  soenk.e