Doppeleintrag in DB durch "aktualisieren" verhindern?
Moses
- php
Hallo,
habe eine MySql Datenbank in die ich Werte über eine Php Seite eintragen lasse.
Habe also ein Formular in dem ich Daten eingeben kann, wenn ich auf "schicken" klicke werden diese Daten eingetragen und ich bekomme auf dem Bildschirm eine Meldung "Daten eingetragen" sowie diverse Links die für die eingetragenen Daten relevant sind und auf weitere Dateien verweisen.
Wenn nun zwischen Seiten hin und her gesprungen wird, klicken manche Anwender auf "aktualisieren" wenn sie zu der "Rückmeldungsseite" mit den Links zurückkehren (was absolut nicht nötig ist...) und dadurch werden die Daten erneut eingetragen.
Wie kann man sowas verhindern?
Grüße,
Moses
Sup!
Evtl. durch Sequenznummern oder durch Constraints in der Datenbank.
Gruesse,
Bio
Halihallo
habe eine MySql Datenbank in die ich Werte über eine Php Seite eintragen lasse.
Habe also ein Formular in dem ich Daten eingeben kann, wenn ich auf "schicken" klicke werden diese Daten eingetragen und ich bekomme auf dem Bildschirm eine Meldung "Daten eingetragen" sowie diverse Links die für die eingetragenen Daten relevant sind und auf weitere Dateien verweisen.
Wenn nun zwischen Seiten hin und her gesprungen wird, klicken manche Anwender auf "aktualisieren" wenn sie zu der "Rückmeldungsseite" mit den Links zurückkehren (was absolut nicht nötig ist...) und dadurch werden die Daten erneut eingetragen.
Wie kann man sowas verhindern?
Neben Bio's Vorschlägen, gäbe es noch eine über HTML:
In das Formular eine random generierte ID als hidden-field eintragen. Jede ID darf nur einmal "ausgeführt" werden (ansonsten Programmabbruch). Die ID's können in einer txt. Datei gespeichert werden (nur als Bsp.); werden jeweils zu Beginn des Programmes abgetragt.
Bio, vielleicht hast du das mit Sequenznummern gemeint? - Wenn ja, dann soll man dieses Posting als "Fleisch um den kahlen Knochen" interpretieren ;)
Viele Grüsse
Philipp
Sup!
Bio, vielleicht hast du das mit Sequenznummern gemeint? - Wenn ja, dann soll man dieses Posting als "Fleisch um den kahlen Knochen" interpretieren ;)
Jepp, so hatte ich das gemeint... in einem Anfall von newbiefeindlichem Profi-Getue hatte ich die boesartige Idee, mich moeglichst kurz zu fassen, um den armen Fragesteller entweder zum Nachdenken anzuregen oder zu verwirren.
Mit constraints hatte ich natuerlich Database-Constraints gemeint, wie z.B. "unique".
Gruesse,
Bio
Halihallo Bio
Bio, vielleicht hast du das mit Sequenznummern gemeint? - Wenn ja, dann soll man dieses Posting als "Fleisch um den kahlen Knochen" interpretieren ;)
Jepp, so hatte ich das gemeint... in einem Anfall von newbiefeindlichem Profi-Getue hatte ich die boesartige Idee, mich moeglichst kurz zu fassen, um den armen Fragesteller entweder zum Nachdenken anzuregen oder zu verwirren.
Was ja per se gar nicht schlecht ist, die meisten verstehen das leider nur falsch; aber durch Denken soll noch keiner Schaden genommen haben in diesem Forum ;)
Mit constraints hatte ich natuerlich Database-Constraints gemeint, wie z.B. "unique".
Gott war mir gnädig: Das hatte ich aus deiner kurzen Fassung schon entnehmen dürfen ;)
Viele Grüsse
Philipp