Avatar billede hansen1142 Nybegynder
09. januar 2006 - 09:37 Der er 12 kommentarer og
1 løsning

Et script der tæller filer i en mappe

Hey. Jeg står og mangler et lille script der tæller indhold af en mappe.
Jeg har et billede upload system, og skal så bruge et script der tæller antal billeder der er i mappen, så den skriver fx:

Sjove billeder: 496
Wallpapers: 245

Kan i hjælpe?
Det skal gerne være nemt at arbejde med, da jeg ikke lige er den skarpeste kniv i skuffen til det her..
Avatar billede jaw Nybegynder
09. januar 2006 - 09:50 #1
Ja, du kan prøve følgende og se om det er hvad du søger:
<?
$array = array("beskrivelse" => array("Sjove billeder", "Wallpapers"), "bibliotek" => array("fun", "wallpapers"));
$i = 0;
while($i < count($array['beskrivelse'])) {
    $count = 0;
    $handle=opendir("./".$array['bibliotek'][$i]);
    while (false !== ($file = readdir($handle))) {
        if($file != "." && $file != "..") {
            $count++;
        }
    }
    echo $array['beskrivelse'][$i] . " " . $count . "<br />";
    closedir($handle);
    $i++;
}
?>
Avatar billede hansen1142 Nybegynder
09. januar 2006 - 09:53 #2
Nu vil jeg lige høre.. Jeg har flg. mapper med billeder:

sjove
wallpapers
owned
dyr

Og de skal listes således:

Sjove
Wallpapers
Owned
Dyr

Hvordan gør vi det?
Skal jeg kopiere ovenstående ind i en fil vi kalder fx count.php og så include den i en table?
Avatar billede jaw Nybegynder
09. januar 2006 - 09:55 #3
Ja, det kunne dy jo godt, og så med:
$array = array("beskrivelse" => array("Sjove", "Wallpapers", "Owned", "Dyr"), "bibliotek" => array("sjove", "wallpapers", "owned", "dyr"));

Nu er din beskrivelse og mappenavn så det samme, så man kunne måske gøre den en lille smule nemmere, men i mit eksempel har du mulighed for at lave en anden beskrivelse end mappens navn.
Avatar billede hansen1142 Nybegynder
09. januar 2006 - 10:06 #4
Den virker, og gør hvad den skal :)
Nu har jeg et eneste sidste krav, fordi at mit upload script auto laver thumbs som ligger i samme rod, så den skal derfor kun tælle:

.jpg .JPG .jpeg .png .gif

(thumbs gemmes som .tcf)

Smid det sidste i et svar, så får du dine point c",)
Avatar billede jaw Nybegynder
09. januar 2006 - 10:07 #5
Jeg har så tilladet mig at lave den nemme løsning, hvor den tjekker på at den ikke hedder .tcf :)

if($file != "." && $file != ".." && substr($str, -3) != ".tcf")) {
Avatar billede jaw Nybegynder
09. januar 2006 - 10:09 #6
Ej noget ævl, $str skal selvf. være $file :)
Avatar billede hansen1142 Nybegynder
09. januar 2006 - 10:13 #7
Hvor sætter jeg det ind henne? Prøvede lige under den anden if($file , men det skulle man vist ikke..
Avatar billede hansen1142 Nybegynder
09. januar 2006 - 10:15 #8
DOH skal jo self erstatte den nuværende :D
Avatar billede jaw Nybegynder
09. januar 2006 - 10:15 #9
Nej, i stedet for. Bare udskift:
if($file != "." && $file != "..") {
med:
if($file != "." && $file != ".." && substr($file, -3) != "tcf") {
Avatar billede hansen1142 Nybegynder
09. januar 2006 - 10:16 #10
Nææh, det vil den ikke være med til
Avatar billede hansen1142 Nybegynder
09. januar 2006 - 10:17 #11
Jo, så kører den.. Smid et svar, så får du dine point..

Jeg takker mange gange! :)
Avatar billede jaw Nybegynder
09. januar 2006 - 10:19 #12
Selv tak :) Ja, havde vist et . for meget i det første forsøg...
Avatar billede hansen1142 Nybegynder
09. januar 2006 - 10:22 #13
Hehe, det kan jo ske for enhver :D
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