Avatar billede Slettet bruger
26. november 2009 - 15:04 Der er 11 kommentarer og
1 løsning

Vis fil-størrelse på fil i mappe

Hej, jeg lister mine filer i min mappe:
---
if (is_dir($dir)) {
    if ($dh = opendir($dir)) {
    $num = 0;
        while (($file = readdir($dh)) !== false) {
            if ($file != '..' && $file != '.')
            {
            $filename = str_replace(".mp3","",$file);
            $filename = str_replace("_"," ",$filename);
            $filename = str_replace("_"," ",$filename);
            $filename = str_replace("-"," / ",$filename);
            $num = $num+1;
           
            if ($date == ""){
            echo "<a href='?date=".$filename."'>".$filename."</a>";
            }
            else
            {
            echo "".$num." - <a href='".$dir."/".$file."'>".$filename."</a> (".filesize($file).")";
            }
            ?>
            <br>
            <?php
            }
        }
        closedir($dh);
    }
---

Problemet er: filesize($file)

Jeg får flg. fejl: Warning: filesize() [function.filesize]: stat failed for...


Er der nogen, der kan gennemskue fejlen og hjælpe mig på vej? Jeg ønsker blot at angive antal mb på hver fil i loopet.
Avatar billede michael_stim Ekspert
26. november 2009 - 15:37 #1
$file, er det både filnavn og sti?
Avatar billede michael_stim Ekspert
26. november 2009 - 15:38 #2
Hov min kommentar forsvandt.

$file, er det både filnavn og sti?
Avatar billede Slettet bruger
26. november 2009 - 15:48 #3
det er filnavn
Avatar billede michael_stim Ekspert
26. november 2009 - 15:52 #4
Der skal også en sti på, så php ved hvor den skal lede, mm filen ligger i samme mappe som scriptet.
Avatar billede Slettet bruger
26. november 2009 - 15:54 #5
Prøv at ændre:

echo "".$num." - <a href='".$dir."/".$file."'>".$filename."</a> (".filesize($file).")";

Til:

echo "".$num." - <a href='".$dir."/".$file."'>".$filename."</a> (".filesize($dir.'/'.$file).")";

Og se om det virker.
Avatar billede public2 Nybegynder
26. november 2009 - 16:00 #6
Hvad siger din meddelelse efter "...", altså:

Warning: filesize() [function.filesize]: stat failed for...

Det du får er en advarelse og ikke en fejl, så noget kunne tyde på at der er et problemet et eller andet sted i enten navn på filen eller måske størrelsen af filen, den må ikke overskride 2gb.

Har du prøvet med andre filer eller at hardcode filnavnet ind i din kode for at tjekke om det er der problemet ligger?
Avatar billede Slettet bruger
26. november 2009 - 16:03 #7
Ah, ja - det virker fint. Det var stien, der manglede. Svar gerne for point. Tak for hjælpen!
Avatar billede Slettet bruger
26. november 2009 - 16:29 #8
Selv tak.
Jeg er glad for at jeg kunne hjælpe :)
Avatar billede Slettet bruger
26. november 2009 - 16:33 #9
@michael_stim - hvis du vil svare kan I evt. dele pointene. I var vist "lige gode om det" :-)
Avatar billede Slettet bruger
26. november 2009 - 16:48 #10
Ja, det er helt sikkert. Michaiel kom med problemet, jeg kom med løsningen.
Avatar billede michael_stim Ekspert
26. november 2009 - 17:33 #11
Samler ikke, ellers tak ;o)
Avatar billede Slettet bruger
27. november 2009 - 19:21 #12
Helt fint... Tak til jer begge for hjælpen!
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