Kundennummer automatisch generieren

Diskussionen rund um die Templates (incl. Smarty)
Antworten
Kopernikus
Beiträge: 390
Registriert: Fr 19. Okt 2012, 12:15

Kundennummer automatisch generieren

Beitrag von Kopernikus »

Nach so vielen Fragen, gibt's auch mal wieder was von mir zurück ;)

Ich weiss nicht wie Ihr das seht, aber mich störte, dass bei einer Bestellung nicht automatisch eine sinnvolle Kundennummer generiert wird. Natürlich kann man eine solche manuell im Backend eintragen. Die folgende Lösung gefällt mir aber eindeutig besser.

Beispiel: Max Mustermann Kunden-Nr: MUS-6142-38265

Erklärung:
MUS -> MUStermann (die ersten 3 Buchstaben Bilden immer die Kundennummer)
6224 -> Jahr 06, der 224. Tag
38265-> die 38265. Sekunde seit 00:00 Uhr dieses Tages

Das Skript könnt Ihr dann wie folgt einbauen:

Geht zur: /inc/create_customer.inc.php

Suche:

Code: Alles auswählen

 if (ACCOUNT_DOB == 'true') {
            $sql_data_array['customers_dob'] = xtc_date_raw($dob);
Und füge gleich danach folgendes ein:

Code: Alles auswählen

// neue Kundennumer automtisch generieren:
$kunr = "";
if( $kunr == "" )
{
$knr_pre = substr($lastname,0,3);
$knr_pre = strtoupper($knr_pre);
$knr_jah = date("y");
$knr_jah = $knr_jah * 1000;
$tage = date("z");
$knr_dat = $knr_jah + $tage;
$std = date("H");
$min = date("i");
$sec = date("s");
$std = $std * 3600;
$min = $min * 60;
$mt = $std + $min + $sec;
$kunr = $knr_pre . "-" . $knr_dat . "-" . $mt;
$chkunr = $kunr;
}
$sql_data_array['customers_cid'] = $chkunr;
// Ende Kunden-Nr
Speichern, uploaden, fertig ;)
Kopernikus
Beiträge: 390
Registriert: Fr 19. Okt 2012, 12:15

Re: Kundennummer automatisch generieren

Beitrag von Kopernikus »

Soeben habe ich bemerkt, dass mit der oben genannten Lösung, leider auch Gastkonten eine neue Kundennummer erhalten. Das ist natürlich nicht Sinn und Zweck. Der Grund ist wohl der, dass man früher zwei core Dateien verwendete (create_account_guest.php & create_account.php) und heute nur noch die letztere. Um dieses Problem zu lösen, genügt eine einfache if Bedingung.

Damit sollte es klappen. ;)

Code: Alles auswählen

// neue Kundennumer automtisch generieren:

if ($isGuest) {
} else {
	// = customer
$kunr = "";
if( $kunr == "" )
{
$knr_pre = substr($lastname,0,3);
$knr_pre = strtoupper($knr_pre);
$knr_jah = date("y");
$knr_jah = $knr_jah * 1000;
$tage = date("z");
$knr_dat = $knr_jah + $tage;
$std = date("H");
$min = date("i");
$sec = date("s");
$std = $std * 3600;
$min = $min * 60;
$mt = $std + $min + $sec;
$kunr = $knr_pre . "-" . $knr_dat . "-" . $mt;
$chkunr = $kunr;
}
$sql_data_array['customers_cid'] = $chkunr;
// Ende RP-Kunden-Nr
}
Antworten