Avatar billede likedon Nybegynder
07. december 2005 - 11:29 Der er 4 kommentarer og
1 løsning

Unik random kode

har følgende:
$kodegavekort=trim(mt_rand(100000000, 9999999999));
//test om den findes
$sqlk="SELECT * FROM site_rabatkode WHERE rabatkode_kode='$kodegavekort'";
$resultk=MySQL_query($sqlk);
$numk = mysql_num_rows($resultk);
if ($numk==0) {
$kodegavekort=$kodegavekort;
} else {
$kodegavekort=trim(mt_rand(100000000, 9999999999));
}



Ovenstående duer jo ikke, da jeg kun tjekker en gang om den findes i databasen, hvordan får jeg den til at tjekke indtil, at den finder en unik kode.


de 200pt er fordi t jeg gerne vil have løst det asap, da jeg sidder ved kunden og kan ikke se mig ud af det...
Avatar billede jaw Nybegynder
07. december 2005 - 11:34 #1
Prøv lige det her:

$kodegavekort=trim(mt_rand(100000000, 9999999999));
//test om den findes
$unik = 0;

while($unik == 0) {
    $sqlk="SELECT * FROM site_rabatkode WHERE rabatkode_kode='$kodegavekort'";
    $resultk=MySQL_query($sqlk);
    $numk = mysql_num_rows($resultk);
    if ($numk==0) {
        $kodegavekort=$kodegavekort;
        $unik = 1;
    } else {
        $kodegavekort=trim(mt_rand(100000000, 9999999999));
    }
}
Avatar billede likedon Nybegynder
07. december 2005 - 12:02 #2
det ser fornuftig ud self lige en rettelse:
while($unik == 0) {
    $sqlk="SELECT * FROM site_rabatkode WHERE rabatkode_kode='$kodegavekort'";
    $resultk=MySQL_query($sqlk);
    $numk = mysql_num_rows($resultk);
    if ($numk==0) {
        $kodegavekort=$kodegavekort;
        $unik = 1;
    } else {
      $unik = 0;
    }
}
Avatar billede likedon Nybegynder
07. december 2005 - 12:02 #3
næ glem det
Avatar billede likedon Nybegynder
07. december 2005 - 12:03 #4
gætter på at det er rigtig læg et svar og pt er dine
Avatar billede jaw Nybegynder
07. december 2005 - 12:08 #5
Der er jo et par småting der ikke er nødvendige at have med, men hvis det virker er det måske også bare det vigtigste :) ?
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester