Axel Richter: (PERL) -> (MySQL) ->UNIQUE Feld -> Welcher Error an Perl?

Beitrag lesen

Hallo,

Ein Webdienst bietet einen internen bereich.
Der Login findet mit der kombination von Username und Passwort statt.

Bei der anmeldung wird überprüft,
oder bereits ein anderer user der gewünschten Usernamen hat.

Wenn nicht,

dann wird der Name registriert (in die Tabelle geschrieben), so dass er bei der nächsten anstehenden Anmeldeprüfung bereits nicht mehr als neuer Name akzeptiert wird. Erst, wenn das erfolgreich war, erfolgt die Ausgabe "Gratuliere der Username ist möglich" und erst dann

wird die Anmeldung vervollstaendigt und
der User bekommt seinen login mit dem gewünschten usernamen
und passwort.

jetzt gibt es aber ein Problem:

Das gibt es dann nicht mehr ;-))
Selbst, wenn zwei gleichzeitig den selben Namen anfordern, gewinnt der, welcher einige zehntel Sekunden schneller war. Der Andere bekommt nur gesagt: "Der Name ist bereits registriert, bitte versuchen Sie einen anderen."

Für Anmeldeversuche, die dann nicht abgeschlossen werden (zu erkennen an Name ohne Passwort), empfiehlt sich ein regelmäßiges
DELETE ... WHERE Passwort IS NULL ...

viele Grüße

Axel