02. august 2005 - 11:54Der er
17 kommentarer og 1 løsning
vedr. billedbehandling
Jeg er blevet i tvivl om hvordan følgende kode virker : Jeg kan ikke se hvorhenne/hvordan billedet bliver overført til mappen "lille" ??????????
<?php // denne del laver thumbnails i 50*50 (thumbnaillille) til thumbnailmappelille
$info = @getimagesize($til); $percent = 0.5; // if you want to scale down first $imagethumbsize = 50; // thumbnail size (area cropped in middle of image) switch ( $info[2] ) { case 1: // gif
// Content type header('Content-type: image/gif'); $billede1 = tempnam('/var/www/komxx.dk/public_html/lille/', 'f1_'); ; $billede1b = $billede1 . '.' . 'gif'; $billede11 = basename($billede1b); // Get new dimensions list($width, $height) = getimagesize($til); if ($width<100 or $height<100) { $new_width = $width ; $new_height = $height ; } else {
// basically take this line and put in your versin the -($new_width/2) + ($imagethumbsize/2) & -($new_height/2) + ($imagethumbsize/2) for // the 2/3 position in the 3 and 4 place for imagecopyresampled // -($new_width/2) + ($imagethumbsize/2) // AND // -($new_height/2) + ($imagethumbsize/2) // are the trick imagecopyresampled($image_p, $image, -($new_width/2) + ($imagethumbsize/2), -($new_height/2) + ($imagethumbsize/2), 0, 0, $new_width , $new_height , $width, $height); break;
case 2: // jpeg
// Content type header('Content-type: image/jpg');
$image_p = imagecreatetruecolor($imagethumbsize , $imagethumbsize); // true color for best quality $white = imagecolorallocate($image_p, 0xFF, 0xFF, 0xFF); //hvid baggrund imagefill($image_p, 0, 0, $white); //hvid baggrund $image = imagecreatefromjpeg($til);
// basically take this line and put in your versin the -($new_width/2) + ($imagethumbsize/2) & -($new_height/2) + ($imagethumbsize/2) for // the 2/3 position in the 3 and 4 place for imagecopyresampled // -($new_width/2) + ($imagethumbsize/2) // AND // -($new_height/2) + ($imagethumbsize/2) // are the trick imagecopyresampled($image_p, $image, -($new_width/2) + ($imagethumbsize/2), -($new_height/2) + ($imagethumbsize/2), 0, 0, $new_width , $new_height , $width, $height);
break; default: // die( 'Ikke understøttet. Vi tager kun imod jpg og gif!' ); }
Jamen billedet kommer jo ikke ud af det blå ?? Hvor bliver det indsat i koden henne ?? Og hvad er det der gør at det overføres til netop mappen "lille" ????
nå er vist med nu.. men en ting til : Når jeg ser i mappen "lille" er filen uden endelsen, eks. uden .jpg ?? Hvordan kan det ske ??
Synes godt om
Slettet bruger
02. august 2005 - 12:18#5
Overførslen sker ved at tempnam() opretter en midlertidig fil, og imagejpeg() og/eller imagegif() som du gør brug af, overskriver så denne midlertidige fil med billeddata.
Det er det andet argumnet i funktionen der fortæller hvor billedet skal gemmes.
Hvis du havde skrevet magejpeg($image_p); i stedet for magejpeg($image_p, $billede2, 100); - ville billedet blive vidst på din skærm i stedet for at blive gemt på $billed2s plads, eftersom du sætter en header('Content-type: image/jpg'); i starten.
Spørg hvis du er i tvivl om mere :)
Synes godt om
Slettet bruger
02. august 2005 - 12:19#6
magejpeg($image_p); skal selvfølgelig være imagejpeg($image_p); :)
Sagen er at det har virket hos b-one men nu hos powerhosting virker det ikke ! Jeg får meddelelser som her og mapperne "test" , "thumbnailmappelille" og "thumbnailmappestor" er oprettet i serverens open_basedir indstilling ! :
[02-Aug-2005 12:24:04] PHP Warning: imagejpeg(): open_basedir restriction in effect. File(/var/www/komxx.dk/public_html/thumbnailmappelille/f1_TJvbJQ2.jpg) is not within the allowed path(s): (/var/www/komxx.dk/public_html/test:/var/www/komxx.dk/tmp:/var/www/komxx.dk/public_html/thumbnailmappestor:/var/www/komxx.dk/public_html/thumbnailmappelille:/var/www/komxx.dk/public_html/) in /mnt/raid/www/www/komxx.dk/public_html/opdatering_tilmelding_final_thumbnail_laverthumbnails.php on line 301
[02-Aug-2005 12:24:04] PHP Warning: imagejpeg(): Invalid filename '/var/www/komxx.dk/public_html/thumbnailmappelille/f1_TJvbJQ2.jpg' in /mnt/raid/www/www/komxx.dk/public_html/opdatering_tilmelding_final_thumbnail_laverthumbnails.php on line 301
[02-Aug-2005 12:24:04] PHP Warning: imagejpeg(): open_basedir restriction in effect. File(/var/www/komxx.dk/public_html/thumbnailmappestor/f1_6n3Z2y2.jpg) is not within the allowed path(s): (/var/www/komxx.dk/public_html/test:/var/www/komxx.dk/tmp:/var/www/komxx.dk/public_html/thumbnailmappestor:/var/www/komxx.dk/public_html/thumbnailmappelille:/var/www/komxx.dk/public_html/) in /mnt/raid/www/www/komxx.dk/public_html/opdatering_tilmelding_final_thumbnail_laverthumbnails.php on line 400
[02-Aug-2005 12:24:04] PHP Warning: imagejpeg(): Invalid filename '/var/www/komxx.dk/public_html/thumbnailmappestor/f1_6n3Z2y2.jpg' in /mnt/raid/www/www/komxx.dk/public_html/opdatering_tilmelding_final_thumbnail_laverthumbnails.php on line 400
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.