Avatar billede kakster Nybegynder
11. januar 2008 - 11:00 Der er 12 kommentarer og
1 løsning

Billeder der skifter

Hej Eksperter

Jeg er igang med at lave en side:

www.scorekarl.com/helle

Der er tre billeder ude til venstre. Dem kunne jeg godt tænke mig at de skifter automatisk, hvis man trykker på nogle af de andre link, eller hvis siden bliver opdateret. Hvordan får man lige gjort det?
Avatar billede fant0mas Nybegynder
11. januar 2008 - 11:26 #1
<?php
srand((float) microtime() * 10000000);
$input = array("Neo", "Morpheus", "Trinity", "Cypher", "Tank");
$rand_keys = array_rand($input, 2);
echo $input[$rand_keys[0]] . "\n";
echo $input[$rand_keys[1]] . "\n";
?>

http://dk2.php.net/manual/en/function.array-rand.php
Avatar billede kakster Nybegynder
11. januar 2008 - 11:41 #2
og så bare fortsætte alt efter hvor mange billeder man har?
Avatar billede fant0mas Nybegynder
11. januar 2008 - 12:04 #3
<?php
srand((float) microtime() * 10000000);
$input = array("billede1.jpg", "billede2.jpg", "billede3.jpg", "billede4.jpg", "billede5.jpg");
$rand_keys = array_rand($input, 3);
echo '<img src="'.$input[$rand_keys[0]].'" border=0">';
echo '<img src="'.$input[$rand_keys[1]].'" border=0">';
echo '<img src="'.$input[$rand_keys[2]].'" border=0">';
?>
Avatar billede kakster Nybegynder
11. januar 2008 - 14:18 #4
kan man lave noget smart så arrayet selv henter hvad der er i en mappe?
Avatar billede fant0mas Nybegynder
11. januar 2008 - 14:27 #5
<?php
$input = array();
if ($handle = opendir('/path/to/files')) {

    while (false !== ($file = readdir($handle))) {
        $input[] = $file;
    }
$rand_keys = array_rand($input, 3);
echo '<img src="'.$input[$rand_keys[0]].'" border=0">';
echo '<img src="'.$input[$rand_keys[1]].'" border=0">';
echo '<img src="'.$input[$rand_keys[2]].'" border=0">';
closedir($handle);
}
?>
Avatar billede kakster Nybegynder
11. januar 2008 - 14:39 #6
mange tak. smider du et svar?
Avatar billede fant0mas Nybegynder
11. januar 2008 - 14:45 #7
SVAR!
Måske skal du tilføje et tjek så du er sikker på filerne er med endelsen jpg png osv.
Avatar billede olebole Juniormester
11. januar 2008 - 17:29 #8
<ole>

Man kan også bare blande array'et:

<?php
if ($handle = opendir('/path/to/files')) {
    $input = array();
    while (false !== ($file = readdir($handle))) {
        $input[] = $file;
    }
    closedir($handle);
    shuffle($input);
    echo '<img src="'.$input[0].'" border=0">';
    echo '<img src="'.$input[1].'" border=0">';
    echo '<img src="'.$input[2].'" border=0">';
}
?>

/mvh
</bole>
Avatar billede fant0mas Nybegynder
11. januar 2008 - 17:57 #9
Desuden kan man også sige at php.net bør være for dig, hvad Harry Potter er for din søster/kæreste/kone :D
Avatar billede olebole Juniormester
11. januar 2008 - 22:00 #10
- og Fanny Hill var for din farfar  ;D
Avatar billede kakster Nybegynder
12. januar 2008 - 12:02 #11
@ fant0mas.

Jeg var lige lidt for hurtig. Den kan ik vise billederne. Det ser ud som om den finder mappen med billederne, men under selve img src, ser det ud som om at den vil finde billerderne i samme mappe.

Min kode ser sådan her ud:

<?php
$input = array();
if ($handle = opendir('../billeder')) {

    while (false !== ($file = readdir($handle))) {
        $input[] = $file;
    }
$rand_keys = array_rand($input, 3);
echo '<img src="'.$input[$rand_keys[0]].'" border=0">';
echo '<img src="'.$input[$rand_keys[1]].'" border=0">';
echo '<img src="'.$input[$rand_keys[2]].'" border=0">';
closedir($handle);
}
?>
Har selv prøvet at få den til at vise stien, men har ik rigtig kunen finde problemet :(
Avatar billede fant0mas Nybegynder
12. januar 2008 - 12:07 #12
Ændre til:
$input[] = '../billeder'.$file;
Avatar billede kakster Nybegynder
12. januar 2008 - 12:25 #13
fantastisk :P
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