-4

これが私の作業画像のアップロードと名前変更のコードですが、アップロードされている画像のサイズを変更するには、いくつかの支援が必要です。

アップロードコード:

// Upload File to Directory
    $code = md5(time());
    $image = $_FILES['userfile']['name'];
    $imagename = $code.$image;
    $file_name = basename($_FILES['userfile']['name']);
    $uploaddir = '../_gallery/' . $imagename;
    $uploadfile = $uploaddir . basename($_FILES['userfile']['name']);
    move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile);

MySQLに保存:

$sql="UPDATE b_thome SET 
hdescription = '$front_description', 
himg = '$uploadfile', 
hndescription = '$right_description', 
hfacebook='$facebook_link', 
htwitter='$twitter_link' 
WHERE locationid = '$location'";

画像セットのサイズを600x800pxに変更する簡単な方法はありますか?

ありがとう!

4

3 に答える 3

1

GDライブラリを使用してサイズを変更すると、画像管理に必要なすべての機能が提供されます。これを使用すると、次のような関数を使用して、最初の画像を縮小した画像を作成できます。

function resizeImage($file, $filename, $newwidth = 800, $newheight = 600)
{       
    $type = substr($file,strrpos($file,".")+1);

    switch($type) 
    {
        case 'jpg':
            $src = imagecreatefromjpeg($file);
            break;
        case 'jpeg':
            $src = imagecreatefromjpeg($file);
            break;
        case 'gif':
            $src = imagecreatefromgif($file);
            break;
        case 'png':
            $src = imagecreatefrompng($file);
            break;
        default:
            $src = imagecreatefromjpeg($file);
            break;
    }

    list($width,$height)=getimagesize($file);
    $tmp=imagecreatetruecolor($newwidth,$newheight);
    imagecopyresampled($tmp,$src,0,0,0,0,$newwidth,$newheight,$width,$height);

    switch($type) {
        case 'jpg':
            imagejpeg($tmp,$filename,100);
            break;
        case 'jpeg':
            imagejpeg($tmp,$filename,100);
            break;
        case 'gif':
            imagegif($tmp,$filename,100);
            break;
        case 'png':
            imagepng($tmp,$filename,9);
            break;
        case 'wbm':
            imagewbmp($tmp,$filename,100);
            break;
        default:
            imagejpeg($tmp,$filename,100);
            break;
    }
    imagedestroy($src);
    imagedestroy($tmp);
    return true;
}
于 2012-07-20T13:50:31.907 に答える
1

または、怠け者の場合は、PHP Image Magicanと呼ばれる優れたオープンソースプロジェクトがあり、画像のサイズ変更を簡単に行うことができます。

于 2012-07-31T02:07:45.747 に答える
0

アップロード時に画像のサイズを変更するには、PHPGDライブラリを参照してください

于 2012-07-20T13:47:30.627 に答える