{% else-1 %}
Пример

Удалён 500); // 500 px
echo \'<form enctype=\"multipart/form-data\" action=\"\" method=\"post\">\' .
\'<div>Загрузить фото</div>\' .
\'<div><input name=\"image\" type=\"file\" /></div>\' .
\'<div><input type=\"submit\" name=\"submit\" value=\"Ok\" /></div>\' .
\'</form>\';

                        
function upload_image($image, $size = 240) {

define('DS', DIRECTORY_SEPARATOR);



$dir = 'tmp';



if(!is_dir($dir)) {

mkdir($dir, 0777, 1);

}



if ($image) {

$newname = $_FILES['image']['name'];

move_uploaded_file($image, $dir . DS . $newname);

$info = @getimagesize($dir . DS . $newname);

if ($info) {

if ($info[2] > 3) {

echo '<div>Не верный тип файла</div>';

} else {

switch ($info[2]) {

case 1:

$function = 'imagecreatefromgif';

break;

case 2:

$function = 'imagecreatefromjpeg';

break;

case 3:

$function = 'imagecreatefrompng';

break;

}

$image = $function($dir . DS . $newname);

}

$x = imagesx($image);

$y = imagesy($image);



} else {

echo '<div>Ошибка загрузки файла</div>';

}



$filename = $dir . DS . time() . '.jpg';



// пропорционально уменьшить по ширине до 240

if ($y > $size) {

$newx = $size;

$newy = $y * ($size / $x);

} else {

$newx= $x;

$newy = $y;

}



$newimg = imagecreatetruecolor($newx, $newy);



if ($info[2]==3) {

// прозрачность для png

imagefill($newimg, 0, 0, imagecolorallocate($newimg, 255, 255, 255));

} elseif ($info[2]==1) {

// прозрачность для gif

imagecolortransparent($image, imagecolorallocate($image, 255, 255, 255));

}



imagecopyresampled($newimg, $image, 0, 0, 0, 0, $newx, $newy, $x, $y);

@imagejpeg($newimg, $filename, 100);



} else {

return false;

}

}
0 21 0
Без комментариев...