Beste forumlezers,

Ik wil een pagina maken waarop alle foto's die in een map/folder staan, te laten weergeven.
Het is dus de bedoeling dat alle bestanden die .jpg of .bmp zijn weer te laten geven.

Zelf ben ik een beginnende programmeur. Ik heb gehoord dat dit kan met de functie dir ().

Zou iemand me daarbij kunnen helpen?

MVG,
Julek S.
je wil de map uitlezen/openen... zal je er dan geen

<?php

opendir('path/naar/map');

?>

van maken?

edit: lelijke spatie
Kijk eens bij de scripts.

<?php

function readImages($dir, $extensions)
{
    $image_array[] ;
    $handle = opendir($dir) ;
    while($file = readdir($handle))
    {
        $file_extension = end(explode(".",$file)) ;
        if (in_array($file_extension,$extensions))
        {
            $image_array[] = $file ;
        }
    }
    closedir($handle) ;
    return $image_array;
}

//config dingetje
//de extensies die je wil toestaan
$image_extensions = Array("jpg"
                                                ,"bmp"
                                                ,"jpeg"
                                                ,"gif") ;
//de directory die je wilt uitlezen
$dir = "directory/" ;

$images = readImages($dir,$image_extensions) ;

foreach ($images as $image)
{
    echo "<img src='".$dir.$image."' />" ;
}
?>


Zoiets denk ik? (ps zitten paar dingen in die ik nooit gebruikt heb dus verbeteringen zijn welkom :P)
[edit]
Wat ben ik ook heerlijk blont
[/edit]
Jup, de standaard ik-wil-een-lijst-met-files-manier.
Eén kleine opmerking: soms wil een file TRALALA.JPG heten. Die extensie wordt niet herkent. Een kleine verandering maakt de extensie lowercase:
$file_extension = strtolower(end(explode(".",$file))) ;


en nog een kleine opmerking:

ik weet niet of $var[]; een lege array aanmaakt. Kan zijn hoor, maar ik doe meestal $var = array(); of gewoon geen array aanmaken, omdat je php-parser er vanzelf wel achter komt dat het een array wordt. In dit geval handig: zet $image_array in het begin op false. Als er geen bestanden worden herkent, returnt de functie false: weet je dat er geen files zijn.
@Peter


of gewoon geen array aanmaken,


Dan gaat je error reporting over de zeik volgens mij ;)

Verder helemaal mee eens maar ik doe zulk soort dingen op mn werk altijd even snel om een idee te gegeven :P
Bedankt Jaco :D
Ik heb alleen deze regel
$image_array[] ;
weg gelaten want hij gaf een error aan. Maar bedankt voor je hulp, je bent een pro!!

Hij doet het alleen niet met firefox, maar dat is niet zo erg. Gewoon internet explorer gebruiken.
PARDON???
niks gewoon internet explorer gebruiken..
als ik IE wil openen hier moet k uhm ergens in de windows map gaan zoeken denk ik..
k gebruik alleen maar firefox en ik ben niet de enige (of enigste da weet k allemaal niet :P)
dus k zou zorgen dat t ook in FF werkt..
Julek schreef op 15.05.2007 13:54
Bedankt Jaco :D
Ik heb alleen deze regel
$image_array[] ;
weg gelaten want hij gaf een error aan. Maar bedankt voor je hulp, je bent een pro!!

Hij doet het alleen niet met firefox, maar dat is niet zo erg. Gewoon internet explorer gebruiken.


Ik ben geen pro anders had hij het ook wel in FF gedaan :P. Maar graag gedaan :)
PHP is browser onafhankelijk... Dan is of je html niet goed, of je config instellingen zijn anders!

Reageren