phpbar.de logo

Mailinglisten-Archive

[php] Re: reload sperren

[php] Re: reload sperren

Steffen Sander s.sander_(at)_crs.de
Wed, 05 Apr 2000 13:11:37 +0100


> Von: "Andreas Altenburg" <altenburg_(at)_fup.de>
>
> ein kunde macht einen eintrag in die datenbank und erhält danach eine
> bestätigungsseite. nun klickt er mit dem browser-button zurück oder macht
> einen reload und prompt hab ich den eintrag doppelt.
>
> habe schon über alles nachgedacht: session, query string mit der zeit etc.
> bloss, das alles hilft nichts beim button zurück.

Wenn das  Formular zum Eintragen von Daten vom Kunden aufgerufen wird,
dann immer einen hidden-Tag mit dem aktuellen Timestamp einsetzen.
<input type="hidden" name="crdate" value="<? echo time() ?>">

Wenn das Formular abgeschickt wird kann auf der PHP Seite 1.ein Select
auf die Tabelle mit der Variablen $crdate erfolgen,
( Select aller Datensätze die den Timestamp = $crdate haben. Die Datensätze
sollten deshalb immer mit dem Timestamp abgespeichert werden - in einer dafür
vorgesehenen Spalte ) wenn jetzt ein Datensatz gefunden wurde hat der
Kunde ein Reload ausgelöst oder hat auf den Back-Button geklickt.
In diesem Fall wird jetzt kein insert ausgeführt.
Wenn aber kein Datensatz gefunden wurde kann der Datensatzinsert ausgeführt
werden. Wenn jetzt nochmal ein reload ausgeführt wird, wird ja wieder erst die
Selektion über den Timestamp ausgeführt bevor der Insert erfolgt.

--Steffen
--
Steffen Sander - Internet/Intranet Softwareentwicklung
CRS Computer Register Service GmbH -  Ritterstr. 11 - 10969 Berlin
mailto:s.sander_(at)_crs.de -Tel: +49-30-614 60 01 - Fax: +49-30-614 85 81
http://www.crs.de - http://www.markthalle.de - http://www.stadtnetz.net




php::bar PHP Wiki   -   Listenarchive