phpbar.de logo

Mailinglisten-Archive

[php] Re: Formulardaten bei Aktualisierung nicht erneut übertragen

[php] Re: Formulardaten bei Aktualisierung nicht erneut übertragen

mhe mhe at ltcgroup.de
Die Dez 28 17:25:11 CET 2004


Am Sun, 26 Dec 2004 01:22:11 +0100 schrieb Norbert Pfeiffer <norbert at itbw.de>:

>> Eben getestet. Das sieht gut aus. Ich hoffe das bleibt so :-)
> nicht ganz,
> der User kann mit dem Back-Button seines Browsers das Formular
> aus seinem Cache holen und erneut absenden.
> Wenn das auch nicht mehr gehen darf, musst man loggen, ob das
> Formular schon mal angekommen ist. Falls 'N' wird wieder auf
> 'danke.html' gelinkt, ansonsten nornmal verarbeitet ...

dann mach es so,

wen du das formular zum client auslieferst verpasst du dem
in einem hidden feld eine uinique id, ein md5(rand()) bla irgendwas,
schreibst es parallel noch in die session des users als valide unique
fuer einen formular-aufbau mit rein,

bekommst du jetzt den request des von dir aufgebauten formulars zurueck,
checkst du, ob du das unique hiddenj feld in der valide unique liste hast,
verarbeitest die daten und wirfst die unique aus den validen raus, und dann
kanner den back button druecken und reload, und er wird serverseitig an der validierung
der unique scheitern, da sie nichtmwehr existiert und du kannst sagen,
"fehler, formular kann nichtmehr verarbeitet werden, druecke kein reload oder so du a*****"

ciao
  Mathias

php::bar PHP Wiki   -   Listenarchive