Avatar billede kalaharikid Nybegynder
29. april 2007 - 20:43 Der er 14 kommentarer og
1 løsning

thumbnail resample problem php

Jeg har dette script der skal gemme en stor og en lille gif ...

Er desværre helt grøn i php, men det er gået så vældigt indtil nu. Det der driller er at få lavet en thumb kopi af $img.

Gider en af jer hajer tage et kig (udsnit af koden) ?

// random navn
$randName = md5(rand() * time());
//gem random navn i variabel ... er dette et nyt random navn?
$gemtnavn = $randName;
// sti  +  navn
$nysti = 'brugerbilleder/' . $randName . '.gif';
// thumbsti  +  thumbnavn
$thumbsti = 'brugerbilleder/' . 'thumb_' . $gemtnavn . '.gif';
// vis billede og gem i nysti
imagegif($img, $nysti);
// lav thumb
imagecopyresampled($thumbsti, $nysti, 0, 0, 0, 0, 125, 100, 480, 350);
//gem thumb
//dræb variabel
imagedestroy($img);
// tag billede med til næste side
header('Location:vis.php?img_id=' . $nysti);
Avatar billede windcape Praktikant
29. april 2007 - 20:44 #1
Du skriver så ikke hvad problemet rent faktisk er...
Avatar billede jakobdo Ekspert
29. april 2007 - 21:00 #2
Efter din imagecopyresampled() skal du igen kalde:

imagegif($thumbsti, $thumb_navn);
Avatar billede kalaharikid Nybegynder
30. april 2007 - 20:30 #3
$thumb_navn ? Hvad er den for en ?
Avatar billede kalaharikid Nybegynder
30. april 2007 - 20:31 #4
windcape > "Det der driller er at få lavet en thumb kopi af $img.". Problemet er at der ikke bliver gemt nogen thumb.
Avatar billede jakobdo Ekspert
30. april 2007 - 20:55 #5
test lige denne kode:

// random navn
$randName = md5(rand() * time());
//gem random navn i variabel ... er dette et nyt random navn?
$gemtnavn = $randName;
// sti  +  navn
$nysti = 'brugerbilleder/' . $randName . '.gif';
// thumbsti  +  thumbnavn
$thumbsti = 'brugerbilleder/' . 'thumb_' . $gemtnavn . '.gif';
// vis billede og gem i nysti
imagegif($img, $nysti);
// lav thumb
$thumbimg = imagecreatetruecolor(125, 100);
imagecopyresampled($thumbimg, $nysti, 0, 0, 0, 0, 125, 100, 480, 350);
//gem thumb
imagegif($thumbimg, $thumbsti);
//dræb variabel
imagedestroy($img);
// tag billede med til næste side
header('Location:vis.php?img_id=' . $nysti);
Avatar billede kalaharikid Nybegynder
30. april 2007 - 21:09 #6
DET virker fantastisk. Var det den her : $thumbimg = imagecreatetruecolor(125, 100);? Læg et svar så er der point ;-)
Avatar billede kalaharikid Nybegynder
30. april 2007 - 21:14 #7
ups, det var lige for hurtigt. thumb er sort ...
Avatar billede jakobdo Ekspert
30. april 2007 - 21:20 #8
Jeg tror ikke helt din kode den gør hvad du tror den gør.
Kan du ikke prøve at forklare kort, hvad du vil opnå?
Avatar billede kalaharikid Nybegynder
30. april 2007 - 21:41 #9
Jeps ... Gem et billede i stort, og lav en miniature af det og gem det bagefter. Det er til en malebog ;-) Hvis du vil se hele koden :

http://www.astroloris.dk/colourbook/files/layout/phpkode.txt
Avatar billede jakobdo Ekspert
30. april 2007 - 21:47 #10
Hvor kommer billedet fra i første omgang?
Er det noget som du allerede har liggende på serveren?
Avatar billede kalaharikid Nybegynder
30. april 2007 - 21:56 #11
Det kommer fra flash, og bliver opbygget med BitmapData class ...
Avatar billede jakobdo Ekspert
30. april 2007 - 22:03 #12
Prøv lige at ret:

imagecopyresampled($thumbimg, $nysti, 0, 0, 0, 0, 125, 100, 480, 350);
//gem thumb
imagegif($thumbimg, $thumbsti);

til:

imagecopyresampled($thumbimg, $img, 0, 0, 0, 0, 125, 100, 480, 350);
//gem thumb
imagegif($thumbimg, $thumbsti);
Avatar billede kalaharikid Nybegynder
30. april 2007 - 22:23 #13
Du er fandeme en knag, jakobdo. Nu er min malebog i hus ... Tusind tusind tak fordi du gad. NU er der point!
Avatar billede jakobdo Ekspert
30. april 2007 - 22:27 #14
Svar!
Avatar billede jakobdo Ekspert
01. maj 2007 - 08:07 #15
Takker for point.
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