Avatar billede anderseiler Nybegynder
02. januar 2006 - 21:17 Der er 8 kommentarer og
1 løsning

Vælge en tilfældig

Hej.. Hvis jeg har 1000000 id'er i min database, hvordan får jeg så et script til at udvælge en tilfældig en af dem, hver gang funktionen køres?

Mvh
Anders
Avatar billede jaw Nybegynder
02. januar 2006 - 21:18 #1
SELECT FROM tabelnavn ORDER BY RAND() LIMIT 1
Avatar billede anderseiler Nybegynder
02. januar 2006 - 21:23 #2
Fejl?

Warning: mysql_query(): supplied argument is not a valid MySQL-Link resource in C:\Programmer\Apache Group\Apache2\htdocs\hotpeople\includes\functions.php on line 26

Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in C:\Programmer\Apache Group\Apache2\htdocs\hotpeople\includes\functions.php on line 27

line 26, 27:

    $sufpquery = mysql_query("SELECT FROM brugere ORDER BY RAND() LIMIT 1",$db);
    $sufpbruger = mysql_fetch_assoc($sufpquery);

Hvad kan det skyldes? Ugyldig query?
Avatar billede jaw Nybegynder
02. januar 2006 - 21:25 #3
Hov, der skal lige feltnavn(e) eller * ind:

SELECT feltnavn1, feltnavn2 FROM tabelnavn ORDER BY RAND() LIMIT 1
SELECT * FROM tabelnavn ORDER BY RAND() LIMIT 1
Avatar billede anderseiler Nybegynder
02. januar 2006 - 21:26 #4
Jeg bliver ved med at få den samme fejl...
Avatar billede jaw Nybegynder
02. januar 2006 - 21:27 #5
Og du har husket at connecte til databasen?
Avatar billede anderseiler Nybegynder
02. januar 2006 - 21:29 #6
Jeg kan godt logge ind i systemet gennem en bruger i databasen, så ja, det vil jeg da mene...

Den siger jo også at det er argumentet i queryen der er noget galt med... så vidt jeg kan forstå..
Avatar billede jaw Nybegynder
02. januar 2006 - 21:32 #7
Det kan du ikke helt tage for gode varer, for det er PHP's fejlmeddelelse, der bare ved at noget er galt. Hvis du vil have den helt præcise fejl, så brug:

$sufpquery = mysql_query("SELECT * FROM brugere ORDER BY RAND() LIMIT 1",$db) or die(mysql_error());

Og connecte skal du gøre i hver fil du bruger, med:

mysql_connect("hostnavn", "brugernavn", "adgangskode") or die(mysql_error());
mysql_select_db("databasenavn") or die(mysql_error());
Avatar billede anderseiler Nybegynder
02. januar 2006 - 21:38 #8
Det er fordi jeg skal have connectet med ind i funktionen har jeg lige fundet ud af :) Det er ikke nok at have det i dokumentet.... :) Smid et svar, det virker jo fint det du har lavet :)
Avatar billede jaw Nybegynder
02. januar 2006 - 21:40 #9
Godt :) Takker...
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

IT-JOB