Avatar billede vixmix Nybegynder
17. november 2004 - 16:24 Der er 8 kommentarer og
1 løsning

Random billede skift?

Hej alle sammen.

Jeg skal have dette billede til at ændre, ikke at den tæller fra 1-100 men at den tæller 1,8,9,1,3,44,89,13 osv osv f.eks. hvordan får jeg den til det:

<?php
//sti til mappen som skal åbnes for læsning. I dette tilfælde den aktuelle mappe
$path = opendir("rpicstole/");

//filerne skal i et array for at kunne tælles
$billeder = array();

//Vi læser dir igennem for filer
while (false !== ($dir = readdir($path))){

//Laver et array med de filer i mappen som ikke skal vises
$ejvist = array(".", "..", "rand.php", "README.html", "HEADER.shtml", "rand.zip");

//Er filen i arrayet ejvist fortsætter vi
    if (in_array($dir, $ejvist)) {
continue;
    }else{

//"tilegner" filerne til arrayet billeder vi definerede tidligere
    $billeder[] = $dir;
    }
}
closedir($path);

//Tæl billeder og brug rand
$vistbillede = rand(0, count($billeder) -1);
?>



er det ikke noget med den her:

$vistbillede = rand(0, count($billeder) -1);
Avatar billede jaw Nybegynder
17. november 2004 - 16:48 #1
Og ovenstående virker ikke? Så prøv: rand(0, (count($billeder)-1));
Avatar billede jaw Nybegynder
17. november 2004 - 16:49 #2
Men den funktion vil jo give et tilfældigt tal mellem 0 og det antal billeder du nu har. Hvad er det du vil have den til med det tal?
Avatar billede vixmix Nybegynder
17. november 2004 - 16:52 #3
Hej.

Jeg tror jeg ved problemet.. det er fordi jeg har 3 billede som naturligvis bruger det samme script.. men jeg skal have de 3 billeder til at være anderledes fra hinanden .. hvordan gør jeg det :/?

mvh vixmix
Avatar billede jaw Nybegynder
17. november 2004 - 17:00 #4
Jeg ved ikke helt om jeg forstår... Men hvis jeg forstår, så må du jo lave noget hvor du gemmer det nummer den sidste rand udvalgte.

F.eks.:

$brugtetal = array();

//kører en rand
$brugtetal .= $det_tal_fra_dit_array

//næste rand
if(!in_array($det_nye_rand_tal, $brugtetal)) {
  $brugtetal .= $det_nye_rand_tal;
} else {
  //så må den udvælge igen
}

etc. etc.
Det skal nok laves smartere i virkelighedens verden, men forståelsesmæssigt... :)
Avatar billede jaw Nybegynder
17. november 2004 - 17:00 #5
$brugtetal .= $det_tal_fra_dit_array <- Det skal være: $brugtetal .= $det_tal_fra_din_rand
Avatar billede vixmix Nybegynder
17. november 2004 - 17:20 #6
jeg vil lige prøve :).
Avatar billede vixmix Nybegynder
17. november 2004 - 18:41 #7
Jo det virker nu :o).. smider du et svar :D?
Avatar billede jaw Nybegynder
17. november 2004 - 19:34 #8
Jamen det var da godt :)
Avatar billede vixmix Nybegynder
17. november 2004 - 19:53 #9
mange tak.

-lukket-
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