Avatar billede saison Nybegynder
13. februar 2003 - 16:49 Der er 3 kommentarer og
1 løsning

Tilfældigt tal - men ikke et der er i db i forvejen

Jeg skal have en funktion der laver et tilfældigt tal, jeg vil gerne benytte ran-funktionen. Tallet skal gemmes i en database, men det skal først tjekkes at tallet ikke er der i forvejen, for så skal den vælge et andet tal.

Hvordan gøres dette nemmest?
Avatar billede saison Nybegynder
13. februar 2003 - 16:51 #1
ran = rand
Avatar billede alrua Nybegynder
13. februar 2003 - 19:15 #2
start med at hente alle dataene ud fra mysql og lægge dem i et array - herefter kan du lave en løkke som laver tal indtil du finder et der ikke findes...i hvert fald en måde at gøre det på

et eksempel:

<?php
$query = "SELECT nummer FROM tabel";
$result = mysql_query($query) or die(mysql_error());
while($row = mysql_fetch_row($result)) {
$numre[] = $row[0];
}

$nyt_nummer = rand();
while(array_search($nyt_nummer, $numre) != false) {
  $nyt_nummer = rand();
}

?>
Avatar billede fangel Nybegynder
13. februar 2003 - 21:20 #3
alrua => hvad med

in_array()

istedet for

array_search()

nej, de minder ikke spor om hinanden, men navnet er 3 char kortere... nemmere at skrive... ;) ;) ;) men in_array() har eksistet siden PHP 4.0.0, array_search siden 4.0.5...

Morten
Avatar billede saison Nybegynder
14. april 2003 - 11:39 #4
Jeg har bare taget datoen, så får man nyt tal hele tiden... Ellers tak!
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