webForumDet fria alternativet

Thumbnails

7 svar · 317 visningar · startad av Webslave

WebslaveMedlem sedan maj 2002647 inlägg
#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 ;)

MatteMedlem sedan aug. 20002 975 inlägg
#2

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);
WebslaveMedlem sedan maj 2002647 inlägg
#3

Jag ändrade till

 $src_im = imagecreatefromjpeg($uploadfile);

Men den är fortfarande svart... några andra idéer?

MatteMedlem sedan aug. 20002 975 inlägg
#4

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");
WebslaveMedlem sedan maj 2002647 inlägg
#5
Notice: Undefined variable: src in /sökväg/admin/actionAddImage.php on line 32

Line 32:

$info = getimagesize($src);
WebslaveMedlem sedan maj 2002647 inlägg
#6

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

MatteMedlem sedan aug. 20002 975 inlägg
#7

Ä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);
WebslaveMedlem sedan maj 2002647 inlägg
#8

Du är kung Matte ;) Tack så jättemycket.

119 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
117 ms — hämta tråd, inlägg och bilagor (db)