Avatar billede walden Nybegynder
04. oktober 2005 - 13:50 Der er 5 kommentarer og
1 løsning

Random - men aldrig to gange

Er det muligt, at lave et random-script, der fx vælger mellen 30 spørgsmål, men aldrig viser det samme spørgsmål to gange?

Forstået på denne måde: når et spørgsmål er blevet vist, er det pågældende spørgasmål ikke med i puljen længere, således at der næste gang vælges tilfældigt mellem 29 spørgsmål ... næste gang mellem 28 spm ... osv.

Er der nogen, der kan give et bud på, hvordan det skal scriptes?
Avatar billede mccookie Seniormester
04. oktober 2005 - 14:05 #1
Et eller 2 forslag fra mig til dig.......

Betragt dem vejledenede da det blot er en tanke og ikke en løsning

1) Lav det evt. i javascript istedet, så det afvilkes på brugerens computer

2) I php ser jeg en kombinationsløsning mellem php/session og array, men der bliver en tung trafik imellem brugercomputer og server.....

Bare en tanke.......
Avatar billede flim Nybegynder
04. oktober 2005 - 14:06 #2
Hvis du har dine spørgsmål i en database kan du bare sætter en tæller på når de er set. Og så hele tiden kun vælge mellem dem der endnu ikke er set. Det er den mest simple løsning imo
Avatar billede coderdk Praktikant
04. oktober 2005 - 14:26 #3
Hvad med noget i stil med:

session_start();
if ( empty( $_SESSION['rand'] ) )
{
  $_SESSION['rand'] = range(1,30);
  shuffle( $_SESSION['rand'] );
}
if ( count( $_SESSION['rand'] ) )
{
  echo array_pop( $_SESSION['rand'] );
}
else
{
  echo "Du har prøvet alle.";
}
Avatar billede coderdk Praktikant
04. oktober 2005 - 14:27 #4
if ( count( $_SESSION['rand'] ) > 0 )

er vist pænere ;)
Avatar billede walden Nybegynder
04. oktober 2005 - 16:32 #5
Tak for det coderdk ... vil du lave et svar?
Avatar billede coderdk Praktikant
04. oktober 2005 - 16:40 #6
Yessir :)
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