Mailinglisten-Archive |
hallo Mark, Mark-Walter at t-online.de wrote: > Klappt auch ganz prima bis auf die Tatsache, das einem Reload > des Browsers die ganze Parametrisierung der URL geparst und > nochmal abgearbeitet wird. > ... > "Gewöhnlich macht man dies, indem man mit Session arbeitet und bei > jedem Formular eine eindeutige ID ("Challenge") als Hidden-Variable > in das Formular mit aufnimmt, die man sich außerdem in einer lokalen > Sessionvariablen auf dem Server merkt." du sollst eine session benutzen. > Ich habe ja bereits eine Session mit @session_start(); generiert, > aber was nutzt eine weitere Session um einen Reload zu erkennen ? da du schon eine hast, benutzt du eben diese. > Eine verstecktes Hidden Formular könnte ich verwenden, eine > Session mit MD5 generieren aber das bringt mir nichts, da der Kunde > ja auch bestellt haben könnte. doch, genau so. die challenge id per hidden field in das bestellformular und dann bei der unmittelbaren verarbeitung der bestellung, vermerkst du diese id in der session. aktualisiert der user die seite, kommt folglich die gleiche id wieder an und dein script kann anhand deines vermerkes in der session erkennen, dass es sich nur um einen refresh handelt. ist die id noch nicht in der session, dann ist es eine echte bestellung und dann wird diese dem warenkorb zugefügt. regards, Ringo
php::bar PHP Wiki - Listenarchive