16. november 2004 - 20:05
Der er
9 kommentarer og 1 løsning
Kun billede som er mindst 200kb
Hej Jeg fik hjælp til denne kode forleden dag. <?php $mappe = "copper/albums/userpics/10001"; // Mappen med billeder $handle = opendir($mappe); while (($fil = readdir($handle)) !== false) { if ($fil != "." && $fil != ".." && !is_dir($mappe."/".$fil)) { $billeder[] = "$fil"; } } closedir($handle); $i = rand(0,count($billeder)-1); $size = getimagesize($mappe."/".$billeder[$i]); $w = $size[0]; $h = $size[1]; $rw = 200 / $w; $rh = 100 / $h; if( $rw > $rh ) $rsize = $rh; else $rsize = $rw; $w = $w * $rsize; $h = $h * $rsize; echo "<img src='$mappe/$billeder[$i]' width='$w' height='$h'>"; ?> Nu kunne jeg så godt tænke mig, at siden kun viser billeder som er på 200kb eller der over. Er der nogle som kan hjælpe med det? Mvh Michal
Annonceindlæg fra gavdi
16. november 2004 - 20:18
#1
Du kan vel if ($fil != "." && $fil != ".." && !is_dir($mappe."/".$fil)) { if(filesize($mappe."/".$fil) > (200*1024)) { $billeder[] = "$fil"; } }
16. november 2004 - 20:23
#2
Måske, Men vil den kode så ikke også gå efter billeder på mindst 1024x f.eks 800 pixel?
16. november 2004 - 20:25
#3
Jow da, det er jo kun filstørrelsen som her tjekkes. Str. i pixels er jo noget andet.
16. november 2004 - 20:28
#4
Okay men hvorfor så 200x1024? Den forstår jeg ikke helt. Billedet skal bare være mindst 200kb.
16. november 2004 - 20:29
#5
1 Kb er 1024 bytes
16. november 2004 - 20:35
#6
Nåh på den måde ;-) Nu har jeg lige prøvet med kode. <?php $mappe = "testfoto"; // Mappen med billeder $handle = opendir($mappe); while (($fil = readdir($handle)) !== false) { if ($fil != "." && $fil != ".." && !is_dir($mappe."/".$fil)) { $billeder[] = "$fil"; } } closedir($handle); $i = rand(0,count($billeder)-1); $size = getimagesize($mappe."/".$billeder[$i]); $w = $size[0]; $h = $size[1]; $rw = 200 / $w; $rh = 100 / $h; if( $rw > $rh ) $rsize = $rh; else $rsize = $rw; $w = $w * $rsize; $h = $h * $rsize; if ($fil != "." && $fil != ".." && !is_dir($mappe."/".$fil)) { if(filesize($mappe."/".$fil) > (200*1024)) { $billeder[] = "$fil"; } } echo "<img src='$mappe/$billeder[$i]' width='$w' height='$h'>"; ?> Jeg har lage 2 billeder i min testmappe. Et på 6.173kb og Et på 765.976 kb. Men når jeg opdatere siden bliver det lille også vist.. hmm
16. november 2004 - 20:38
#7
? Du blander koderne lidt sammen. Brug det i den første while, altså der hvor $billeder[] oprettes <?php $mappe = "testfoto"; // Mappen med billeder $handle = opendir($mappe); while (($fil = readdir($handle)) !== false) { if ($fil != "." && $fil != ".." && !is_dir($mappe."/".$fil)) { if(filesize($mappe."/".$fil) > (200*1024)) { $billeder[] = "$fil"; } } } closedir($handle); $i = rand(0,count($billeder)-1); $size = getimagesize($mappe."/".$billeder[$i]); $w = $size[0]; $h = $size[1]; $rw = 200 / $w; $rh = 100 / $h; if( $rw > $rh ) $rsize = $rh; else $rsize = $rw; $w = $w * $rsize; $h = $h * $rsize; echo "<img src='$mappe/$billeder[$i]' width='$w' height='$h'>"; ?>
16. november 2004 - 20:43
#8
Mange tak for din hjælp :-) Igen ;-) Kommer du med et svar?
16. november 2004 - 20:45
#9
Så lidt da! :O)
16. november 2004 - 20:49
#10
Lige et hurtig spørgsmål. Kan man få koden til at lede efter billeder i under mapper? Altså hvis nu min hovdemappe er testfoto, og jeg så har 4 under mapper i den kan koden så hente fra en af dem helt tilfældig?
Vi tilbyder markedets bedste kurser inden for webudvikling