Scripts
Upload image /resizer
$tempfile = link naar upload dir $dir = doel dir $file = nieuwe bestands naam $height / $width maximale hoogte/breedte Om het aan te roepen.
upload-image-resizer
<?php
//function to resize / upload a photo save it to a dir
function upload ($tempfile,$dir,$file,$height,$width){
//$tempfile = filename generated by the server when uploading a file
//$dir = directory with the final location
//$file = new filename
//$height / $width explain enough i think
//check if the file is realy uploaded
if(!is_uploaded_file($tempfile)){
$error[0] = false;
$error[1] = -1;
$error[2] = 'file is not uploaded';
return $error;
}else{
//get the dimensions of the file
if(!$dim = getimagesize($tempfile)){
$error[0] = false;
$error[1] = -2;
$error[2] = 'No image file';
return $error;
}else{
//0 = width
//1 = height
//2 = type
//we want to calculte if the bigger then the maxsize if not keep it easy --> upload it
if($dim[0] < $width && $dim[1] < $height){
//move upload file
if(!file_exists($dir.$file)){
if(@move_uploaded_file($tempfile,$dir.$file)){
$error[0] = true;
$error[1] = 1;
$error[2] = 'File uploaded';
return $error;
}else{
$error[0] = false;
$error[1] = -3;
$error[2] = 'Error during move upload file';
return $error;
}
}else{
$error[0] = false;
$error[1] = -4;
$error[2] = 'File allready exsits';
return $error;
}
}else{
//we have to resize :(
if($dim[0] > $dim[1]){
$prop = $width / $dim[0];
$dims[0] = $width;
$dims[1] = round($dim[1] * $prop);
}else{
$prop = $height / $dim[1];
$dims[1] = $height;
$dims[0] = round($dim[0] * $prop);
}
//we know the new size
if($dim[2] == 2){
if(!$mimage = @imagecreatefromjpeg($tempfile)){
$error[0] = false;
$error[1] = -4;
$error[2] = 'Error';
return $error;
}
}
//we know the new size
if($dim[2] == 1){
if(!$mimage = @imagecreatefromgif($tempfile)){
$error[0] = false;
$error[1] = -4;
$error[2] = 'Error';
return $error;
}
}
//we know the new size
if($dim[2] == 3){
if(!$mimage = @imagecreatefrompng($tempfile)){
$error[0] = false;
$error[1] = -4;
$error[2] = 'Error';
return $error;
}
}
$im = @imagecreatetruecolor($dims[0],$dims[1]);
@imagecopyresampled($im, $mimage, 0, 0, 0, 0, $dims[0], $dims[1], $dim[0], $dim[1]);
if(!file_exists($dir.$file)){
if($dim[2] == 2){
if(!@imagejpeg($im,$dir.$file,100)){
$error[0] = false;
$error[1] = -5;
$error[2] = 'Imagecreate error';
return $error;
}else{
$error[0] = true;
$error[1] = 2;
$error[2] = 'Resized';
return $error;
}
}
if($dim[2] == 1){
if(!@imagegif($im,$dir.$file)){
$error[0] = false;
$error[1] = -5;
$error[2] = 'Imagecreate error';
return $error;
}else{
$error[0] = true;
$error[1] = 2;
$error[2] = 'Resized';
return $error;
}
}
if($dim[2] == 3){
if(!@imagepng($im,$dir.$file)){
$error[0] = false;
$error[1] = -5;
$error[2] = 'Imagecreate error';
return $error;
}else{
$error[0] = true;
$error[1] = 2;
$error[2] = 'Resized';
return $error;
}
}
}else{
$error[0] = false;
$error[1] = -4;
$error[2] = 'File allready exsits';
return $error;
}
imagedestroy($im);
imagedestroy($mimage);
//end resize
}
}
}
}
?>
Reacties
0