Gå til innhold

Hvordan få tilfeldige sider?


Anbefalte innlegg

Driver på med Russesiden vår. Der skal jeg ha en kolonne som henter fram profilen til et tilfeldig medlem.

 

Profilene er lagret som egne HTML dokumenter, av typen "profiler/navn.html".

 

Det jeg trenger nå er et script som viser en tilfeldig profil, altså hver gang siden laster.

Noen som kunne hjulpet meg med det? :)

Lenke til kommentar
Videoannonse
Annonse

Løsning i pseudokode:

 

new array profiler[] 
i=0
for each file in /profiles as profil
    profiler[i] = profil
    i++
end for
show_page_nr = round(random() * profiler->size)
show_page = profiler[show_page_nr]
output(show_page)

 

Dette er vel den enkleste løsningen. Skal legge meg nå, så jeg orker ikke skrive et skikkelig kodeeksempel. Lykke til!

Lenke til kommentar

Du har alle profilene i en egen mappe? og ingen andre filen i den mappen?

 

I så fall så er det ganske rett frem. F.eks.:

 

<?php

$mappe = "./profiler/";

 

if ($handle = opendir($mappe)) {

while (false !== ($file = readdir($handle))) {

if ($file != "." && $file != "..") {

$file_list[] = $file;

}

}

closedir($handle);

}

 

include $mappe.$file_list[mt_rand(0, (count($file_list)-1))];

?>

 

Kan kanskje ligne noe. Har ikke testet det!

 

Edit:

glemte noen [], det skjer når man skriver uten å teste ;)

Endret av ????????
Lenke til kommentar
ville det fungert å legge alle filene inn i en array og brukt array_rand for å velge en filfeldig side på den måten...?

Absolutt et godt poeng ilpostino.

 

Bytt ut:

include $mappe.$file_list[mt_rand(0, (count($file_list)-1))];

 

Med:

include $mappe.$file_list[array_rand($file_list, 1)];

 

I denne sammenhengen vil det ha minimalt å si, men credit where credit is due, bra forslag ilpostino.

Endret av ????????
Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...