Hallo,
ich denke nicht 100%ig.
Das stimmt.
Theoretisch könnten doch in derselben Millisekunde zwei verschiedene Anfragen kommen.
Man spricht sich doch in einer Firma/Band ab, wer wann einen Newsletter schreibt oder? Und gleiche Millisekunde ist schon ganz schön krass, dann könnte es auch sein, dass in dieser gleichen Millisekunde zwei gleiche Zufallszahlen generiert werden, und schon hat man das gleiche Problem.
Und dann gibt's da noch die Zeitumstellungen und vielleicht wird auf dem Server ja auch mal die Uhrzeit auch so korrigiert ...
Das ist schon eher ein Argument. Aber da reicht dann schon eine 4 stellige Zufallszahl+Datum+Uhrzeit aus oder?
Also mal sehen ob ich das richtig verstanden habe:
1. Beim ersten betreten der Seite newsletter-schreiben.php mache ich eine Zufallszahl+Datum+Uhrzeit
2. Diese wird nur dann generiert,
if(empty($_POST["form_submitted"])
{
$id = rand(1000,9999).time();
}
3. Schreibe ich diese als unique id in die Datenbank
4. Wenn man auf den Zurück Button drückt, hat man immer noch die gleiche $id
5. Bevor Abgeschickt, oder in die DB reingeschrieben wird wird verglichen ob irgendeine id aus der BB == $id (oder kommt da gleich ein Fehler von der DB weil die id ja auf unique gestellt ist?)
6. wenn ja wird abgebrochen und eine Fehlermeldung ausgegeben
7. wenn nein, wird alles so gemacht wie bisher
Habe ich da irgendwo einen Denkfahler drin? Ich werde es dann mal nächste Woche versuchen umzusetzten. Dann brauche ich ja die automatisch generierte id in der DB gar nicht.
Grüße
Jeena Paradies
I want to be a woman... from now on I want you all to call me Loretta.