Autor |
Nachricht |
addy
Threadersteller
Dabei seit: 22.01.2003
Ort: -
Alter: -
Geschlecht: -
|
Verfasst Fr 12.11.2004 12:29
Titel PHP/MySQL! Kundennummer über ID vergeben??? |
|
|
also ich hab nen Formular und trage Kundendaten in die DB ein, klappt auch wunderbar, jetzt wollte ich über die ID (die in der DB als auto_increment angelegt habe) ne eindeutige Kundennummer vergeben, z.B. soll er immer die ID nehmen und + 1234 addieren und das dann als KD-Nr nehmen.
jetzt mein Problem, ich könnte zwar über den Namen den Eintrag suchen lassen und mir die ID geben lassen und dann die KDNR berechnen und eintragen, aber was ist wenn ich z.B. den gleichen Nachnamen schon einmal drin habe, dann bringt er mir ja 2 IDs. Gut man könnte es über ne eindeutige E-Mail Adresse machen, das die nur einmal in der DB vorkommen darf und ich lasse danach suchen. Aber das geht doch bestimmt auch anders, das ich mir irgendwie beim schreiben die ID schon schicken lasse? Oder irgendwie mir immer die größte(letzte) ID ausgeben lasse.
Kann jemand helfen?Danke schonmal
|
|
|
|
|
addy
Threadersteller
Dabei seit: 22.01.2003
Ort: -
Alter: -
Geschlecht: -
|
Verfasst Fr 12.11.2004 12:33
Titel
|
|
|
hat sich geklärt geht mit mysql_number_id
|
|
|
|
|
Anzeige
|
|
|
rob
Dabei seit: 11.12.2003
Ort: ~/
Alter: 46
Geschlecht:
|
Verfasst Fr 12.11.2004 12:39
Titel
|
|
|
Was soll denn das sein?
Ich glaube nicht, daß es mysql_number_id gibt...
Kann mir also auch nicht vorstellen, daß es bei dir funktioniert
|
|
|
|
|
Account gelöscht
Ort: -
Alter: -
|
|
|
|
|
addy
Threadersteller
Dabei seit: 22.01.2003
Ort: -
Alter: -
Geschlecht: -
|
Verfasst Fr 12.11.2004 13:10
Titel
|
|
|
ups ja sorry hab mich verschrieben, habe auch schon ein neues Problem:
also wie gesagt es klappt ja das er mir die ID gibt und er berechnet die Kd-Nr., wenn ich die dann aber eintragen lassen will, funzt es nicht, denke mal es liegt am sql-Sysnta an der where Klausel, finde aber den Fehler nicht.
hier mal der code:
Code: |
if ( @mysql_query($insert) ) {
$number = mysql_insert_id();
$kdnr = $number+1500;
$ins_kdnr = "INSERT INTO kundenstamm (kdnr) VALUES ('$kdnr') WHERE ID = '$number'";
if(@mysql_query($ins_kdnr)) {
echo "<p> Der Kunde <strong>".$name."</strong> wurde in den Kundenstamm mit der Kd-Nr. <strong>".$kdnr." </strong>aufgenommen.</p>";
}
} |
also so funzt es nicht, nehme ich die where klausel raus, geht es, aber er schreibt sie natürlich irgendwo hin.
danke schonmal.
|
|
|
|
|
Account gelöscht
Ort: -
Alter: -
|
Verfasst Fr 12.11.2004 13:15
Titel
|
|
|
versuche es einmal so:
$ins_kdnr = "INSERT INTO kundenstamm (kdnr) VALUES ($kdnr) WHERE ID = $number;";
$kdnr und $number sind keine strings und gehören nicht in einfache anfüs.
du solltest bei solchen operationen auch darauf achten, die tabellen für weitere bearbeitungen zu sperren, bis die id eingefügt wurde (LOCK TABLE xyz glaube ich heißts)
|
|
|
|
|
addy
Threadersteller
Dabei seit: 22.01.2003
Ort: -
Alter: -
Geschlecht: -
|
Verfasst Fr 12.11.2004 13:18
Titel
|
|
|
ne funz es auch net, hatte ich schon probiert,dann geht er gar nicht in die Schleife, wo er dann ausgibt Kunde wurde aufgenommen
|
|
|
|
|
Account gelöscht
Ort: -
Alter: -
|
Verfasst Fr 12.11.2004 13:29
Titel
|
|
|
Dann liegt der Fehler woanders, musste mal mit mysql_error ausgeben
|
|
|
|
|
|
|
|
Ähnliche Themen |
[PHP + mySQL] Kann Fehler in einer mySQL-Phrase nicht finden
[PHP/MySQL] MySQL Error: 1054, falsche Tabelle ausgewählt?
[MySql]Lost connection to MySQL server during query
[PHP / MySQL] MySQL-Funktion gesucht: letzteÄnderungTabelle
[php / mysql] Mysql Daten in php als Link ausgeben
(php-mysql) übergabe von formulardaten und abfrage m. mysql
|
|