Hallo Leute.
Wenn ich einen neuen KUNDEN in die SQL-DB per Formular hinzufügen möchte, wird per autoincrement die ID jeweils um Eins hochgezählt.
Ist der Kunde aber schon vorhanden, soll kein neuer angelegt werden. Klappt soweit auch super, jedoch wird die ID immer weitergezählt obwohl ich keinen Kunden eingetragen habe.
Ich habe folgende Tabelle:
Kunde => kundenID, kunde (UNIQUE), kundennummer
Das sieht dann so aus:
kundenID | kunde| kundennummer
1 | test1 | 001
kundenID | kunde| kundennummer
2 | test2 | 002
kundenID | kunde| kundennummer
5 | test3 | 003
kundenID | kunde| kundennummer
8 | test4 | 004
Wenn ich einen Eintrag erstelle wo der Kunde schon in der SQL-DB steht, dann wird komischerweise die ID trotzdem übersprungen. D.h. wird später wieder ein neuer Kunde hinzugefügt wird nicht der letzte Eintrag genommen sondern ein paar ID´s später.
So sieht ein Schnipsel vom Einfügen aus:
Nicht das mich das jetzt sonderlich stört, aber es sieht nicht schön aus und wirkt später unübersichtlich, aber evtl. gibt es ja Abhilfe dafür.
Grüße
Wenn ich einen neuen KUNDEN in die SQL-DB per Formular hinzufügen möchte, wird per autoincrement die ID jeweils um Eins hochgezählt.
Ist der Kunde aber schon vorhanden, soll kein neuer angelegt werden. Klappt soweit auch super, jedoch wird die ID immer weitergezählt obwohl ich keinen Kunden eingetragen habe.
Ich habe folgende Tabelle:
Kunde => kundenID, kunde (UNIQUE), kundennummer
Das sieht dann so aus:
kundenID | kunde| kundennummer
1 | test1 | 001
kundenID | kunde| kundennummer
2 | test2 | 002
kundenID | kunde| kundennummer
5 | test3 | 003
kundenID | kunde| kundennummer
8 | test4 | 004
Wenn ich einen Eintrag erstelle wo der Kunde schon in der SQL-DB steht, dann wird komischerweise die ID trotzdem übersprungen. D.h. wird später wieder ein neuer Kunde hinzugefügt wird nicht der letzte Eintrag genommen sondern ein paar ID´s später.
So sieht ein Schnipsel vom Einfügen aus:
PHP-Code:
$insert_kunde = mysql_query("INSERT INTO kunde SET
`kunde` ='".mysql_real_escape_string($_POST['kunde'])."',
`kundennummer` ='".mysql_real_escape_string($_POST['kundennummer'])."'
ON DUPLICATE KEY UPDATE
kundenID = LAST_INSERT_ID(kundenID), kundennummer = VALUES(kundennummer)")
or die ("<h2>Datenbank-Error - Fehler beim erstellen des Kunden.</h2>");
$kundenID = mysql_insert_id();
Grüße
Kommentar