|
|
|
|
|
|
| 1 |
Du könntest auch ein ein Uniq-Index auf das ID, E-Mail oder welches auch immer Feld legen. Und würdest direkt von der DB einen Error bekommen, sollte dieser erneut eingefügt werden.
– LiRo 02.12.2011
|
|
|
das hört sich interessant an. Vielleicht hier doch ein paar mehr Info's zu meinem Projekt: es handelt sich um eine Buchhaltungs-Datenbank. Wenn der User auf "buchen" klickt, wird der Eintrag vorgenommen. Jetzt kommt es aber vor, dass (aus welchen Gründen auch immer", der User einen "Refresh" durchführt. Dann wird dieser Eintrag, solange $_POST vorhanden ist, widerholt. Und das muß ich natürlich verhindern. Oft lese ich die Variante mit der "ID", was mir auch einleuchtet. Aber ich bin ja offen für alles neue... :-)
– knopf009 02.12.2011
|
||
|
Dann kannst du doch das machen, was Nicolai geschrieben hat, den User einfach wegleiten. Also den Eintrag speichern und direkt danach eine Umleitung auf z.B. den gespeicherten Eintrag oder der Liste der Einträge machen.
– LiRo 02.12.2011
|
||
|
ich kann den User nicht einfach wegleiten. Denn wenn es sich um einen "nicht bösen" User handelt, macht er den Refresh ja nicht absichtlich. Also insofern nutzt auch das sperren des Buttons nichts. Der User zahlt ja für die Benutzung der DB. Die Lösung von Jürgen Luhr scheint die beste zu sein... nochmals vielen Dank für die "Anteilnahme"
– knopf009 02.12.2011
|
||
|
Wieso kannst du das nicht? Und um welche Art von Software geht es dabei überhaupt?
– LiRo 02.12.2011
|
|
|
| 2 |
Da stimme ich Liro zu. Zum Thema: Was man machen kann ist zum Beispiel den Button per JavaScript sperren. Dann verhindert man zumindest dass das Formular versehentlich 2 mal abgeschickt wird. Ansonsten den Benutzer von der "Speichern" Seite wegleiten.
– Nicolai Schönberg 02.12.2011
|
|
| 1 | ||
|
@Nicolai: Da hat LiRo recht. Das ist auch eine Antwort wert.
Meine Meinung dazu: serverseitig -> notwendig zusätzlich clientseitig -> benutzerfreundlich – Jürgen Luhr 02.12.2011
|
Aber das Problem an sich scheinen auch größere Firmen zu haben. Bei Reichelt z.B. habe ich insg. 6 Kataloge erhalten, weil ich die Seite mehrfach neu geladen habe und das anscheinend nicht verhindert wurde.
Denn eine Meldung an sich (das nach dem refresh ein weiterer DB-Eintrag gemacht wurde) kommt ja nicht automatisch.
Also werde ich zusehen, das HTTP-Redirect mit der ID anzuweden.