W Webslave Medlem sedan maj 2002 647 inlägg Frågan 11 jan. 2006 11:37 #1 Hoj!
Har försökt att få ett script som jag hittat här på wF att funka för mig men jag är urusel på det här med uppladning så det vill sig inte. Jag ska ladda upp en bild och sedan skapa en thumb som är 90*90 och inte förvrängd utan urklippt från bilden. Bilden jag få är svart och webhotellet kör med GD 2***. Här har ni koden som jag försöker få att fungera.
$uploaddir = '/sökvägen/images/';
$uploadfile = $uploaddir . basename($_FILES['image']['name']);
move_uploaded_file($_FILES['image']['tmp_name'], $uploadfile);
$src_im = imagecreatefromjpeg($uploaddir.basename($_FILES['image']['tmp_name']));
$dstW = 90;
$dstH = 90;
$dst_im = imagecreatetruecolor($dstW,$dstH);
$srcW = imagesx($src_im);
$srcH = imagesy($src_im);
$info = getimagesize($src);
switch($info[2]){
case 1:
$im_src = imagecreatefromgif($src);
break;
case 2:
$im_src = imagecreatefromjpeg($src);
break;
case 3:
$im_src = imagecreatefrompng($src);
break;
}
if ($info[1] >= $info[0]){
$srcX = 0;
$srcY = 0;
$srcW = $info[0];
$srcH = $info[0];
}
else{
$srcX = round(($info[0] - $info[1])/2);
$srcY = 0;
$srcW = $info[1];
$srcH = $info[1];
}
imagecopyresampled($dst_im,$src_im,0,0,$srcX,$srcY,$dstW,$dstH,$srcW,$srcH);
imagejpeg($dst_im,$uploaddir."thumb_".basename($_FILES['image']['name']), 90);
imagedestroy($src_im);
imagedestroy($dst_im);
Jag ser säkert inte skogen för alla träd... eller det som är fel i alla dessa fel :) En kick i rätt riktning skulle vara uppskattat ;)
Matte Medlem sedan aug. 2000 2 975 inlägg I och med att du kört move_uploaded_file() så finns inte längre den fil $_FILES['image']['tmp_name'] pekar på.
Ändra därför
$src_im = imagecreatefromjpeg($uploaddir.basename($_FILES['image']['tmp_name']));
till
$src_im = imagecreatefromjpeg($uploadfile);
W Webslave Medlem sedan maj 2002 647 inlägg Jag ändrade till
$src_im = imagecreatefromjpeg($uploadfile);
Men den är fortfarande svart... några andra idéer?
Matte Medlem sedan aug. 2000 2 975 inlägg Lägg följande överst i skriptet, och se om du får några felmeddelanden:
<?php
error_reporting(E_ALL);
ini_set("display_errors", "1");
W Webslave Medlem sedan maj 2002 647 inlägg Notice: Undefined variable: src in /sökväg/admin/actionAddImage.php on line 32
Line 32:
$info = getimagesize($src);
W Webslave Medlem sedan maj 2002 647 inlägg Ser att jag inte definierat $src någonstans... och eftersom jag bara klippt och klistrat så vet jag inte vad som ska vara där... hehe
Matte Medlem sedan aug. 2000 2 975 inlägg Ändra
$src_im = imagecreatefromjpeg($uploaddir.basename($_FILES['image']['tmp_name']));
$dstW = 90;
$dstH = 90;
$dst_im = imagecreatetruecolor($dstW,$dstH);
$srcW = imagesx($src_im);
$srcH = imagesy($src_im);
$info = getimagesize($src);
switch($info[2]){
case 1:
$im_src = imagecreatefromgif($src);
break;
case 2:
$im_src = imagecreatefromjpeg($src);
break;
case 3:
$im_src = imagecreatefrompng($src);
break;
}
till
$info = getimagesize($uploadfile);
switch($info[2]){
case 1:
$src_im = imagecreatefromgif($uploadfile);
break;
case 2:
$src_im = imagecreatefromjpeg($uploadfile);
break;
case 3:
$src_im = imagecreatefrompng($uploadfile);
break;
}
$dstW = 90;
$dstH = 90;
$dst_im = imagecreatetruecolor($dstW,$dstH);
$srcW = imagesx($src_im);
$srcH = imagesy($src_im);
W Webslave Medlem sedan maj 2002 647 inlägg Du är kung Matte ;) Tack så jättemycket.