Avatar billede drage Nybegynder
01. juni 2001 - 00:00 Der er 16 kommentarer og
3 løsninger

Resize pic

Hey - jeg har lavet noget fil upload til at uploade billeder.
Nu vil jeg gerne lave nogle thumbnails af billederne, hvordan kan man gøre det med php ?

Eller der er en smartere måde ?

Ps. Jeg har Ikke adgang til image magic, så det dutter ikke !
Avatar billede wizprod.com Nybegynder
01. juni 2001 - 00:08 #1
Jeg giver 40 point til den, der giver løsning, for den er jeg nemlig også RET interesseret i!
Avatar billede otis Nybegynder
01. juni 2001 - 00:09 #2
hodl on, har vidst noegt!
Avatar billede otis Nybegynder
01. juni 2001 - 00:13 #3
<?php

print\"<font face=verdana size=2>\";

$tal = 0;
if ($dir = opendir(\"pics/\")) {
  while($file = readdir($dir)) {
   
    $tal = $tal+1;
    $shit = filesize(\"pics/$file\");
   
    if(ereg(\".jpg\",strtolower($file)) || ereg(\".gif\",strtolower($file)) || ereg(\".bmp\",strtolower($file))) {
    print\"<br><br><img src=\\\"
    $file \\\" height=\\\"20\" width=\\\"20\\\"> [<b>$shit</b>kb]<br><br>
    <img src=pics/$file>\"; }
  } 
  closedir($dir);
}


?>
<br><br> Der blev fundet <?=$tal?> billeder!   
</font>
Avatar billede otis Nybegynder
01. juni 2001 - 00:17 #4
Hm der skal lige en \\\" på den heigth
Avatar billede otis Nybegynder
01. juni 2001 - 00:31 #5
accepter så LOL
Avatar billede vladimirr Nybegynder
01. juni 2001 - 00:34 #6
med på en lytter
Avatar billede astalavista Nybegynder
01. juni 2001 - 01:18 #7
Lytter oxo lige med.

/A
Avatar billede myplacedk Nybegynder
01. juni 2001 - 06:58 #8
Du skal bruge ImageCopyResized() til at resize billeder med.
http://www.php.net/manual/en/function.imagecopyresized.php

I den første kommentar er der vist et eksempel der viser hvordan man laver en simpel thumbnail.
Avatar billede delwin Nybegynder
01. juni 2001 - 09:30 #9
Dette stykke kode resizer et billede.. men det kræver at serveren er kompileret med gd library..

<?

$maxWidth = 100; // max bredde
$maxHeight = 100; // max højde

$file  = \"forside.jpg\"; // filens navn
$path  = \"./\"; // sti til filen
$outpath = \"./\"; // sti til hvor thumbnailsne skal lægges


$im    = ImageCreateFromJPEG($path.$file);
$imWidth    = ImageSX($im);
$imHeight    = ImageSY($im);
   
if ($imWidth<$maxWidth&&$imHeight<$maxHeight) {
    @imageDestroy($im);
    @copy($file,$outpath.\"th_\".$file);
} else {
       
    if ($imWidth<$imHeight) {
        $img[height]    = $maxHeight;
        $img[width]    = floor($maxHeight*$imWidth/$imHeight);
    } else {
        $img[width]    = $maxWidth;
        $img[height]    = floor($maxWidth*$imHeight/$imWidth);
    }
       
    $nIm    = @imageCreate($img[width],$img[height]);
    @imageCopyResized($nIm,$im,0,0,0,0,$img[width],$img[height],$imWidth,$imHeight);
       
    @imageDestroy($im);
    @ImageJPEG($nIm,$outpath.\"th_\".$file);
    @imageDestroy($nIm);
}
?>
Avatar billede wizprod.com Nybegynder
01. juni 2001 - 10:49 #10
Hvor meget server-kraft æder ovenstående script af delwin?
Avatar billede delwin Nybegynder
01. juni 2001 - 10:53 #11
Ikke særlig meget.. for det sker jo kun en gang.. sat sammen med drages script ville det vel virke sådan her..

man uploader en fil, som bliver gemt på serveren.. scriptet kører videre, henter filen ind og laver en mindre udgave af den, som bliver gemt et andet sted på serveren..

Så når surferen ser siden, bliver maskinen ikke mere belastet end hvis du selv havde uploaded billedet..
Avatar billede wizprod.com Nybegynder
01. juni 2001 - 11:01 #12
Så det vil altså sige man _ikke_ skal køre scriptet hver gang, da bliver gemt?
Avatar billede delwin Nybegynder
01. juni 2001 - 11:03 #13
Det skal kun køre én gang.. når billedet bliver uploadet.. efter det ligger det i en mappe som en thumbnail.. ligesom alle andre billeder..

Det der sker er at den tager det billede man uploader, gemmer det.. så laver den en kopi af det som den så resizer og gemmer i en anden mappe..
Avatar billede delwin Nybegynder
01. juni 2001 - 11:04 #14
den anden sidste linie \"@ImageJPEG($nIm,$outpath.\"th_\".$file);\" har et path parameter på.. så gemmer den billedet på hd..

hvis den bare havde set således ud \"@ImageJPEG($nIm);\" ville den have skrevet billedet til skærmen og det var ikke blevet gemt..
Avatar billede wizprod.com Nybegynder
01. juni 2001 - 11:42 #15
Warning: imagejpeg: unable to open \'img/thm/annamariegoddard/thm_annamariegoddard05.jpg\' for writing in /usr/hotel/wizprod/WWW/test/all/billedesys.php on line 57

Linie 57 indeholder ImageJPEG($nIm,$outpath.\"th_\".$file);

Forkerte rettigheder?
Avatar billede delwin Nybegynder
01. juni 2001 - 11:47 #16
jeps.. du har ikke rettigheder til at skrive i den mappe.. hvis du har mulighed for det så chmod den..
Avatar billede wizprod.com Nybegynder
01. juni 2001 - 11:58 #17
Ja det virkede at sætte den til 777..

Hey har du ICQ?
Avatar billede delwin Nybegynder
01. juni 2001 - 11:59 #18
jeps.. 7880009.. er online
Avatar billede drage Nybegynder
19. juni 2001 - 23:26 #19
Der er lidt til jer alle sammen :)
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