Created
March 14, 2018 09:03
-
-
Save dagostoni/35a9d1db3cb354987ed650297e000826 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
if(move_uploaded_file($_FILES["immagine_luogo_url"]["tmp_name"],PATH_RELATIVO_GALLERIE_LUOGO.$id."-".cleanFilename($_FILES["immagine_luogo_url"]["name"]))) { | |
$immagine_url = $id."-".cleanFilename($_FILES["immagine_luogo_url"]["name"]); | |
resizeMax(PATH_RELATIVO_GALLERIE_LUOGO.$immagine_url,PATH_RELATIVO_GALLERIE_LUOGO."g-".$immagine_url,GALLERIE_LUOGO_G_W,GALLERIE_LUOGO_G_H,GALLERIE_LUOGO_G_Q); | |
resizeMaxCroping(PATH_RELATIVO_GALLERIE_LUOGO.$immagine_url,PATH_RELATIVO_GALLERIE_LUOGO."m-".$immagine_url,GALLERIE_LUOGO_M_W,GALLERIE_LUOGO_M_H,GALLERIE_LUOGO_M_Q); | |
croping(PATH_RELATIVO_GALLERIE_LUOGO."m-".$immagine_url,PATH_RELATIVO_GALLERIE_LUOGO."m-".$immagine_url,GALLERIE_LUOGO_M_W,GALLERIE_LUOGO_M_H,GALLERIE_LUOGO_M_Q); | |
resizeMaxCroping(PATH_RELATIVO_GALLERIE_LUOGO.$immagine_url,PATH_RELATIVO_GALLERIE_LUOGO."p-".$immagine_url,GALLERIE_LUOGO_P_W,GALLERIE_LUOGO_P_H,GALLERIE_LUOGO_P_Q); | |
croping(PATH_RELATIVO_GALLERIE_LUOGO."p-".$immagine_url,PATH_RELATIVO_GALLERIE_LUOGO."p-".$immagine_url,GALLERIE_LUOGO_P_W,GALLERIE_LUOGO_P_H,GALLERIE_LUOGO_P_Q); | |
resizeMaxCroping(PATH_RELATIVO_GALLERIE_LUOGO.$immagine_url,PATH_RELATIVO_GALLERIE_LUOGO."cms-".$immagine_url,GALLERIE_LUOGO_CMS_W,GALLERIE_LUOGO_CMS_H,GALLERIE_LUOGO_CMS_Q); | |
croping(PATH_RELATIVO_GALLERIE_LUOGO."cms-".$immagine_url,PATH_RELATIVO_GALLERIE_LUOGO."cms-".$immagine_url,GALLERIE_LUOGO_CMS_W,GALLERIE_LUOGO_CMS_H,GALLERIE_LUOGO_CMS_Q); | |
$sql = "update axcms_immagine_luogo set immagine_luogo_url = '".$immagine_url."' where immagine_luogoID = '".$id."'"; | |
$result = mysql_query($sql); | |
} | |
function resizeMax($pathIN,$pathOUT,$maxXsize,$maxYsize,$quality = 65) { | |
if(empty($pathIN)) return "Immagine sorgente non specificata"; | |
if(!file_exists($pathIN)) return "Immagine sorgente inesistente"; | |
if(empty($pathOUT)) return "Destinazione non specificata"; | |
if(empty($maxXsize)) return "Dimensione X non valida"; | |
if(empty($maxYsize)) return "Dimensione Y non valida"; | |
if(!preg_match("/.jpg?/i", $pathIN) && !preg_match("/.jpeg?/i", $pathIN) && !preg_match("/.png?/i", $pathIN) && !preg_match("/.gif?/i", $pathIN)) return "Formato non supportato"; | |
$image_info = getimagesize($pathIN); | |
$oldXsize = $image_info[0]; | |
$oldYsize = $image_info[1]; | |
if($maxXsize < $oldXsize || $maxYsize < $oldYsize){ | |
$ratioX = $oldXsize / $maxXsize; | |
$ratioY = $oldYsize / $maxYsize; | |
$ratio = ($ratioY >= $ratioX) ? $ratioY : $ratioX; | |
$newXsize = ceil($oldXsize / $ratio); | |
$newYsize = ceil($oldYsize / $ratio); | |
} else { | |
$newXsize = $oldXsize; | |
$newYsize = $oldYsize; | |
} | |
if(!system("convert -geometry ".$newXsize."x".$newYsize." -antialias '".$pathIN."' '".$pathOUT."'",$result)){ | |
if(preg_match("/.jpg?/i", $pathIN) || preg_match("/.jpeg?/i", $pathIN)){ | |
$im = ImageCreateFromJPEG($pathIN); | |
} else if(preg_match("/.png?/i", $pathIN)){ | |
$im = ImageCreateFromPNG($pathIN); | |
} else if(preg_match("/.gif?/i", $pathIN)){ | |
$im = ImageCreateFromGIF($pathIN); | |
} else { | |
return "Formato non supportato"; | |
} | |
$new_im = ImageCreateTrueColor($newXsize,$newYsize); | |
//ImageCopyResized($new_im, $im, 0, 0, 0, 0, $newXsize, $newYsize, ImageSX($im), ImageSY($im)); | |
imagecopyresampled($new_im, $im, 0, 0, 0, 0, $newXsize, $newYsize, ImageSX($im), ImageSY($im)); | |
if(preg_match("/.jpg?/i", $pathIN) || preg_match("/.jpeg?/i", $pathIN)){ | |
imagejpeg($new_im, $pathOUT, $quality); | |
} else if(preg_match("/.png?/i", $pathIN)){ | |
imagepng($new_im, $pathOUT); | |
} else if(preg_match("/.gif?/i", $pathIN)){ | |
imagegif($new_im, $pathOUT); | |
} else { | |
return "Formato non supportato"; | |
} | |
} | |
return 0; | |
} | |
function resizeMaxCroping($pathIN,$pathOUT,$maxXsize,$maxYsize,$quality = 65) { | |
if(empty($pathIN)) return "Immagine sorgente non specificata"; | |
if(!file_exists($pathIN)) return "Immagine sorgente inesistente"; | |
if(empty($pathOUT)) return "Destinazione non specificata"; | |
if(empty($maxXsize)) return "Dimensione X non valida"; | |
if(empty($maxYsize)) return "Dimensione Y non valida"; | |
if(!preg_match("/.jpg?/i", $pathIN) && !preg_match("/.jpeg?/i", $pathIN) && !preg_match("/.png?/i", $pathIN) && !preg_match("/.gif?/i", $pathIN)) return "Formato non supportato"; | |
$image_info = getimagesize($pathIN); | |
$oldXsize = $image_info[0]; | |
$oldYsize = $image_info[1]; | |
if($maxXsize < $oldXsize || $maxYsize < $oldYsize){ | |
$ratioX = $oldXsize / $maxXsize; | |
$ratioY = $oldYsize / $maxYsize; | |
$ratio = ($ratioY <= $ratioX) ? $ratioY : $ratioX; | |
$newXsize = ceil($oldXsize / $ratio); | |
$newYsize = ceil($oldYsize / $ratio); | |
} else { | |
$newXsize = $oldXsize; | |
$newYsize = $oldYsize; | |
} | |
if(!system("convert -geometry ".$newXsize."x".$newYsize." -antialias '".$pathIN."' '".$pathOUT."'",$result)){ | |
if(preg_match("/.jpg?/i", $pathIN) || preg_match("/.jpeg?/i", $pathIN)){ | |
$im = ImageCreateFromJPEG($pathIN); | |
} else if(preg_match("/.png?/i", $pathIN)){ | |
$im = ImageCreateFromPNG($pathIN); | |
} else if(preg_match("/.gif?/i", $pathIN)){ | |
$im = ImageCreateFromGIF($pathIN); | |
} else { | |
return "Formato non supportato"; | |
} | |
$new_im = ImageCreateTrueColor($newXsize,$newYsize); | |
//ImageCopyResized($new_im, $im, 0, 0, 0, 0, $newXsize, $newYsize, ImageSX($im), ImageSY($im)); | |
imagecopyresampled($new_im, $im, 0, 0, 0, 0, $newXsize, $newYsize, ImageSX($im), ImageSY($im)); | |
if(preg_match("/.jpg?/i", $pathIN) || preg_match("/.jpeg?/i", $pathIN)){ | |
imagejpeg($new_im, $pathOUT, $quality); | |
} else if(preg_match("/.png?/i", $pathIN)){ | |
imagepng($new_im, $pathOUT); | |
} else if(preg_match("/.gif?/i", $pathIN)){ | |
imagegif($new_im, $pathOUT); | |
} else { | |
return "Formato non supportato"; | |
} | |
} | |
return 0; | |
} | |
function croping($pathIN,$pathOUT,$width,$height,$quality = 65) { | |
if(empty($pathIN)) return "Immagine sorgente non specificata"; | |
if(!file_exists($pathIN)) return "Immagine sorgente inesistente"; | |
if(empty($pathOUT)) return "Destinazione non specificata"; | |
if(empty($width)) return "Larghezza non valida"; | |
if(empty($height)) return "Altezza non valida"; | |
if(!preg_match("/.jpg?/i", $pathIN) && !preg_match("/.jpeg?/i", $pathIN) && !preg_match("/.png?/i", $pathIN) && !preg_match("/.gif?/i", $pathIN)) return "Formato non supportato"; | |
$image_info = getimagesize($pathIN); | |
$startX = ($image_info[0] / 2) - ($width / 2); | |
$startY = ($image_info[1] / 2) - ($height / 2); | |
//echo $image_info[0]."-".$image_info[1]; | |
//echo $startX."-".$startY; | |
if(preg_match("/.jpg?/i", $pathIN) || preg_match("/.jpeg?/i", $pathIN)){ | |
$im = ImageCreateFromJPEG($pathIN); | |
} else if(preg_match("/.png?/i", $pathIN)){ | |
$im = ImageCreateFromPNG($pathIN); | |
} else if(preg_match("/.gif?/i", $pathIN)){ | |
$im = ImageCreateFromGIF($pathIN); | |
} else { | |
return "Formato non supportato"; | |
} | |
$new_im = ImageCreateTrueColor($width, $height); | |
imagecopyresampled($new_im, $im, 0, 0, $startX, $startY, $width, $height, $width, $height); | |
if(preg_match("/.jpg?/i", $pathIN) || preg_match("/.jpeg?/i", $pathIN)){ | |
imagejpeg($new_im, $pathOUT, $quality); | |
} else if(preg_match("/.png?/i", $pathIN)){ | |
imagepng($new_im, $pathOUT); | |
} else if(preg_match("/.gif?/i", $pathIN)){ | |
imagegif($new_im, $pathOUT); | |
} else { | |
return "Formato non supportato"; | |
} | |
return 0; | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment