Zweiter Insert mit Duplicate Entry obwohl kein Duplicate vorhanden

holger1234

Grünschnabel
Hallo Liebes PHP Forum,
nach gestriger Nacht hab ich viel über SQL Fehler in bezug auf "Duplicate Entry " gelernt, jedoch mein Problem noch nicht gelöst

Folgende STruktru der Datenbank
user_ID Primarykey mit auto_increment !
username Varchar als Unique


In meinem PHP Script
lasse ich den user das formular ausfüllen (registrierung) und wenn er auf speichern drückt, wird ein insert durchgeführt.
nach diesem Insert lese ich den Return von mysql_query aus und leite Ihne bei Fehlerhaftem Insert (Username schon vorhanden) auf diese Seite weiter. Die seite sieht genauso aus nur mit "Leider ist der User schon vorhanden".

Wenn nun der User , einen wirklich neuen Usernamen einträgt, und auf speichern klickt, wird der gleiche Insert ausgeführt.
Der Insert funktioniert auch (in der DB steht ein neuer eintrag mit dem Usernamen etc drin)
ABER wenn ich nach diesem Insert die mysql_query auslese , erhalte ich den Fehler

sql fehlerDuplicate entry 'aaaa' for key 'username_2'

Obwohl er in der DB steht.
Frage
muss ich nach dem ersten fehlerhaften insert die mysql_query irgendwie wieder leeren ?

wenn nicht, wieso sagt mir die datenbank dass der username schon vorhanden ist und noch viel interessanter, wieso macht er ein USERNAME_2 daraus ? in der Fehlerausgabe ? in der DB steht eine Column mit username ?
ich würde mich tierisch über einen denkanstoss freuen !
lg
holger
 
item: Das PHP-Script für das Insert und den Kontrollmechanismus währen bei einer Fehlersuche sicher von Vorteil.

item: Vorher mit einem SELECT abfragen fince ich den schöneren Weg als einen Error auszuwerten.
 
Zurück