Alexander Foken: Eindeutige Nummer vergeben

Beitrag lesen

Moin Moin !

So ungefähr hab ich das schon gehabt. Funktioniert auch. Was aber, wenn mehr als ein User gleichzeitig das Formular aufmachen. Wenn jetzt noch kein Eintrag in der db ist, wird doch für jeden dieser user 1 vergeben, oder irre ich mich da? Dann hätt ich doch mehr als einmal die 1 vergeben.

Genau das ist das Problem an dem Code. Er ist nicht sicher gegen parallele Zugriffe. Die Tabelle an sich ist aber schon ok.

Du mußt ein INSERT machen (mit Dummy-Daten), das bekommt (garantiert durch die DB) eine eindeutige ID, auch wenn 10 Millionen Leute gleichzeitig den INSERT machen. Die bekommst Du nach dem INSERT irgendwie (ohne SELECT, einfach über die Datenbank-API von PHP) wieder raus. Und dann kommt nur noch das übliche "wie editiere ich eine Datenbank-Zeile per Web-Frontend".

Alexander

--
Nein, ich beantworte keine Fragen per eMail. Dafür ist das Forum da.
Today I will gladly share my knowledge and experience, for there are no sweeter words than "I told you so!"
Mein "Lieblings-Forums-Bug": http://cforum.teamone.de/phpbt/bug.php?op=show&bugid=103&pos=2