Ein altes Thema, welches ich hier noch mal kurz ansprechen möchte: automatische Kundennummer in xt:Commerce. Es kursieren verschiedene Ansätze dafür im Internet, wie zB ein Datum und eine fortlaufende Zahl. Dadurch wird die Nummer gute 7 bis 10 Zeichen lang. Das muss echt nicht sein. Eine einfachere Nummer genügt auch, erleichtert dem Kunden auch das Eingeben bei der Überweisung zum Beispiel.
Also, der Ansatz: Shopkunden bekommen eine Nummer wie “K1234″ mit K für Kunde und Gäste eben eine “G1234″. Dann kann man aus der Nummer gleich sehen, ob derjenige ein Gast oder Kunde des Shops ist.
Wie das Ganze geht:
In der Datei create_account.php (im Rootverzeichnis) nach den ersten Zeilen, die mit “require_once” anfangen kommt diese Funktion.
function new_customer_id($id){
$mt = $id + 1000;
while(strlen($mt)<5)
$mt = "0".$mt;
$kunr = 'K'.$mt;
return $kunr;
}
Dann weiter im Code nach der Zeile:$_SESSION['customer_id'] = xtc_db_insert_id(); und vor der Zeile $user_id = xtc_db_insert_id(); kommt diese Zeile:
// waaza's update
xtc_db_query("update ".TABLE_CUSTOMERS." set customers_cid = '".new_customer_id((int) $_SESSION['customer_id'])."' where customers_id = '".(int) $_SESSION['customer_id']."'");
Das Gleiche muss in der Datei create_guest_account.php geändert werden. Nur halt statt $kunr = 'K'.$mt; eben ein G: $kunr = 'G'.$mt;
Und hier kommt nach der Zeile xtc_db_perform(TABLE_CUSTOMERS, $sql_data_array);
$_SESSION['customer_id'] = xtc_db_insert_id();
die Anweisung xtc_db_query("update ".TABLE_CUSTOMERS." set customers_cid = '".new_customer_id((int) $_SESSION['customer_id'])."' where customers_id = '".(int) $_SESSION['customer_id']."'");
Ich hoffe das ist nun die vollständige Beschreibung. Wenn etwas unklar ist, bitte hier posten.
Und wie immer: keine Verantwortung meinerseits, Einbau auf eigene Gefahr. Vorher lieber backupen!!
Vielen Dank an alle, die meine Arbeit unterstützen möchten, in dem sie mir eine Tasse Kaffee spendieren ;)
Ich bedanke mich bei allen für den Kaffee!



















Juni 20th, 2008 at 10:22 am
hallo,
welche datei ist gemeint? create_account.php = Rootverzeichnis, /admin oder die unter /lang/sprache/admin
gruß Tine
Juni 20th, 2008 at 10:32 am
oops, habe ich vergessen zu schreiben. sorry!
Es ist die Datei im root gemeint.
Juni 20th, 2008 at 12:42 pm
eingebaut, geprüft und für sehr gut befunden!
klasse arbeit und wie immer vielen dank
gruß Tine
Juli 21st, 2008 at 10:45 am
Hallo,
genau wie Tine, eingebaut, getestet und für
gut befunden.
Super Danke weiter so…..
mfg Frank
August 11th, 2008 at 11:20 pm
Hallo, ich wollte gern wissen ob es Probleme gibt wenn bei mir schon mehr als 150 Kunden eine Kundennummer haben? Oder kann ich dann einfach die letzte vergebene dem Script” nennen wie z.B. 159 und er nimmt dann die 160?
Vielen Dank
September 1st, 2008 at 9:22 pm
Hallo, super sache doch ich habe ein Problem mit den Kundennummern zahlen. Fängt bei K1098 an und nicht bei K1000. Woran liegt das nur?
September 1st, 2008 at 10:20 pm
Weil es anscheinend bereits 98 Kunden gibt. Die Nummer setzt sich aus einer Zehl wie 1000 und der ID des Kunden in der Datenbank (nicht der Kundennummer) zusammen.
Oktober 15th, 2008 at 8:10 pm
Hallo. Wie kann man das machen, dass die Kundennummer in der order_mail.html auftaucht?
greeeetz
dicksy
Februar 4th, 2009 at 10:18 am
Hallo,
ein klasse Modul, aber ich hab auch noch eine Frage. Bei mir wird als Kundennummer z.B.
K01011
angelegt. Bisher höchste Testkundennummer war 9331.
Wie aber bekomme ich die 0 nach dem K weg ?
Wir ja wenn ich das richtig sehe von
$mt = “0″.$mt;
$kunr = ‘K’.$mt;
vorgegeben, oder ?
Gruß Marc
April 26th, 2009 at 7:53 am
Empfehle das Anwenderhandbuch zum XT:Commerce und auch in einem noch einfacheren Format unter Punkt 9.9
Oktober 23rd, 2009 at 5:07 pm
Danke, klappt super!
Habe nur eine Frage! Wie bekomme ich es hin das ich auch nach Kundenummern suchen kann?
Oktober 23rd, 2009 at 5:33 pm
Macht das XTC nicht automatisch? Also wenn man in dem Filter bei Kunden die CID angibt?
Sonst müsste man die MySQL-Abfrage wohl anpassen..
Oktober 25th, 2009 at 5:15 pm
Ich weiß nicht mehr wie das normal ist mit der Suche nach der Kundennummer, habe aber auch die Funktion mit der automatischen Kundennummer wieder raus genommen da die vom Faktura Programm vergeben wird.
Aber vielleicht hilf Euch ja die Admin Search Bar - Schnellsuchleiste die ich mal auf nem Gambio Shop raus getüddelt hab. Da kann man dann nach Kunde (Name und/oder Kd.Nummer), Bestellnummer & Artikel suchen.
hier gibt es das zum runter laden
http://www.xtc-load.de/2009/04/admin-search-bar-schnellsuchleiste/
Gruß Pinky
März 10th, 2011 at 12:43 pm
[…] Automatische Kundenummer vergeben in xtc :: waaza – der Blog rund um eCommerce […]
März 10th, 2011 at 12:49 pm
Hi waaza,
toller Beitrag! Ich hab dies super einsetzen können und dich in meinem Blog direkt verlinkt
Grüßle, X