Ik gebruik de volgende code om voor iedere inschrijving een uniek nummer te genereren
De volgende userkey: 8388607 komt 5 keer voor in ca. 100 records. Nogal vreemd als er 8999999 mogelijkheden zijn.
Waar sla ik de plank mis!
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
| my $gen;
my $count = 1;
my $sth;
my $dbh = DBI->connect($database,$db_user,$db_password);
my $resno;
while ($count > 0)
{
$gen = int(rand 8999999) + 1000000;
my $row;
my $query = "SELECT COUNT(userkey) FROM mailinglist WHERE userkey LIKE '%$gen%'";
$sth=$dbh->prepare("$query");
$sth->execute();
$sth->bind_columns(undef, \$resno);
$count = 0;
$row = $sth->fetchrow_arrayref;
if ($resno > 0)
{
$count = 1;
}
}
$sth->finish();
$dbh->disconnect();
return ($gen); |
De volgende userkey: 8388607 komt 5 keer voor in ca. 100 records. Nogal vreemd als er 8999999 mogelijkheden zijn.
Waar sla ik de plank mis!