onregelmatig ID
Webshops hebben vaak een onregelmatig product nummer en vaak ook een onregelmatig klanten nummer omdat ze willen dat de mensen geen goede inzage in hun aantal klanten e.d. krijgen.
Ik vroeg me af hoe je dat doet, want een klanten nummer moet uniek zijn en er mag geen systeem in zitten.(dus geen auto_increment van bijv 135)
Zoiets wil ik graag ook, dus dat hij voor elke klant een random klanten nummer pakt tussen de 100000000 en de 999999999 hoe is zoiets te realiseren?
Mvg Freek
Gewijzigd op 01/01/1970 01:00:00 door Citroen Anoniem Graag
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
function kl($meenemen = 0)
{
if ($meenmen = 0)
{
$kl = rand(100,1000000000);
$kl = kl($kl);
}
else
{
$sql = "SELECT * FROM klanten WHERE klantnummer = " . $meenemen;
$resultaat = mysql_query($sql);
if (mysql_num_rows($resultaat)==0)
{
return $meenmen;
}
else
{
return kl($meenemen + 1);
}
}
return $kl;
}
{
if ($meenmen = 0)
{
$kl = rand(100,1000000000);
$kl = kl($kl);
}
else
{
$sql = "SELECT * FROM klanten WHERE klantnummer = " . $meenemen;
$resultaat = mysql_query($sql);
if (mysql_num_rows($resultaat)==0)
{
return $meenmen;
}
else
{
return kl($meenemen + 1);
}
}
return $kl;
}
dit werkt idd prima, maar dit zou als je veel klanten hebt toch vrij veel geheugen kunnen kosten?
Code (php)
Dit scriptje vult een variabele met 9 random cijfers achter elkaar, het eerste cijfer zal nooit 0 worden omdat ik dat nu opgevangen heb.
Ik heb het overigens niet getest, maar zo weet je hoe je het aan kan pakken.
btw, je moet uiteraard wel even controleren of het gemaakte nummer nog niet bestaat in je database, anders kan dat vervelende situaties opleveren.
Dankje wel, hier was ik al uren mee bezig, terwijl het eigenlijk helemaal niet moeilijk is ik dacht gewoon te ingewikkeld.
Freek hoeveel klanten denk je dat er per dag aangemaakt gaan worden? Zoveel server belasting per dag zal het heus niet opleveren.
@Webmakerij: Is het niet zo dat je bij het maken van een website van het ergste uit moet gaan, stel je voor dat zich op een dag 5000 mensen zouden aanmelden en je hebt al 100000 leden. Niet reëel, maar je moet er van uitgaan, want je controleert bij een loginsysteem de data van de gebruiker tenslotte ook, dan ga je er ook niet vanuit dat hij alleen 'nette teksten' invoert?
Dit is ruim voldoende om die functie uit te voeren. een fractie van die tijd is al voldoende.
Gewijzigd op 01/01/1970 01:00:00 door Stefan van Iwaarden