Avatar billede mora Nybegynder
06. september 2000 - 15:53 Der er 4 kommentarer og
1 løsning

Random

Hvordan kan jeg få en tilfældig række fra en tabel i MySQL?
- Jeg bruger PHP


mysql_query(\"select * from politik_banner where aktiv=\'1\' LIMIT 1\");
- Den returner den første række ed aktiv=1 i politik_banner, men jeg vil have en tilfældig med aktiv=1

- Hvordan?
Avatar billede sjensen Nybegynder
06. september 2000 - 16:27 #1
Prøv at se det her spm. engang.

http://www.eksperten.dk/spm/24852

Selvom det ikke er PHP kan du sikkert få nogle ideer alligevel
Avatar billede mora Nybegynder
06. september 2000 - 16:52 #2
Hjalp ikke meget, mon ikke man kan lave noget random ud af et array?
Avatar billede mkelle1 Nybegynder
06. september 2000 - 23:21 #3

Hej Mora

Her er en løsning!

$sql=\"select * from politik_banner where aktiv=\'1\'\";
$result=mysql_db_query($db,$sql);
$antal=mysql_num_rows($result);

srand((double)microtime()*1000000);
$valg=rand(1,$antal)-1;

$en_tilfældig=mysql_result($result,$valg);

Den er ikke direkte testet men taget fra et script der virker og tilrettet.

Mads
Avatar billede mora Nybegynder
06. september 2000 - 23:25 #4
$en_tilfældig der må da ikke bruges æøå, må der?

- Anyway, hvilken variablel indeholder derefter mine data fra tabellen?
Avatar billede mkelle1 Nybegynder
06. september 2000 - 23:40 #5
Hej Mora
Nej selvfølgelig må man ikke bruge \'æ\' - det er kun for at fortælle er her har du altså dit tilfældigt valgte politik_banner.
Det er altså $en_tilfældig (som du skal omdøbe til det du ønsker den skal hedde) som indeholder hele den tilfældige row som ligger i tabellen politik_banner.

Hilsen

Mads
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
Computerworld tilbyder specialiserede kurser i database-management

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