Codice PHP:
<?php
$id = $_REQUEST['id'];
$immagine = $_REQUEST['nuovaimmagine'];
$proviene_da = $_REQUEST['proviene_da'];
$cat_select = $_REQUEST['cat_select'];
$titolo = $_REQUEST['titolo'];
$categoria = $_REQUEST['categoria'];
$sottocategoria = $_REQUEST['sottocategoria'];
$descrizione = $_REQUEST['descrizione'];
$codice = $_REQUEST['codice'];
$prezzo = $_REQUEST['prezzo'];
$titolo_ric = $_REQUEST['titolo_ric'];
$categoria_ric = $_REQUEST['categoria_ric'];
$sottocategoria_ric = $_REQUEST['sottocategoria_ric'];
$ordina_ric = $_REQUEST['ordina_ric'];
$nuovo = $_REQUEST['nuovo'];
$online = $_REQUEST['online'];
$vetrina = $_REQUEST['vetrina'];
$scrollx = $_REQUEST['scrollx'];
//grandi
$new_width = 353;
$new_height = 265;
//piccoli
$new_width_2 = 177;
$new_height_2 = 79;
//----
//piccoli2
$new_width_3 = 88;
$new_height_3 = 88;
$type_file = explode(".", $immagine);
$gd_function_suffix = array(
'jpg' => 'JPEG',
'JPG' => 'JPEG',
'gif' => 'GIF',
'GIF' => 'GIF',
'bmp' => 'WBMP',
'BMP' => 'WBMP',
'png' => 'PNG',
'PNG' => 'PNG'
);
$function_suffix = $gd_function_suffix[$type_file[1]];
$function_to_read = 'ImageCreateFrom' . $function_suffix;
//FOTO GRANDE
$temp_img = $function_to_read('http://win.nomesito.it/public/prodotti/'.$immagine); //Prendi immagine
$new_img = imagecreatetruecolor($new_width,$new_height); //Seleziona grandezza finale
$old_width = imagesx($temp_img); //Leggi larghezza immagine
$old_height = imagesy($temp_img); //Leggi altezza immagine
if ($old_width > $new_width && $old_height > $new_height) {
//x e y = coordinate per posizionamento foto
if ($old_width<$old_height) { //Se larghezza inferiore ad altezza
if ($old_height<$new_height){
$con = 1;
$operazione5 = 0;
} else {
$con = 0;
$operazione2 = $old_width*$new_height;
$operazione3 = $operazione2/$new_width;
if ($old_height > $operazione3) {
$operazione4 = $old_height-$operazione3;
} else {
$con = 1;
$operazione2 = $old_height*$new_width;
$operazione3 = $operazione2/$new_height;
$operazione4 = $old_width-$operazione3;
}
$operazione5 = $operazione4/2;
}
if ($con == 0){
$x = 0;
$y = 0+$operazione5;
} else {
$x = 0+$operazione5;
$y = 0;
}
} else { //altrimento se la larghezza superiore all'altezza
if ($old_width<$new_width){
$con = 1;
$operazione5 = 0;
} else {
$con = 0;
$operazione2 = $old_height*$new_width;
$operazione3 = $operazione2/$new_height;
if ($old_width > $operazione3) {
$operazione4 = $old_width-$operazione3;
} else {
$con = 1;
$operazione2 = $old_width*$new_height;
$operazione3 = $operazione2/$new_width;
$operazione4 = $old_height-$operazione3;
}
$operazione5 = $operazione4/2;
}
if ($con == 0){
$x = 0+$operazione5;
$y = 0;
}else{
$x = 0;
$y = 0+$operazione5;
}
}
$x = ceil($x); //Arrotondo x
$y = ceil($y); //Arrotondo y
if ($old_width<$old_height) { //Se larghezza inferiore ad altezza
if ($con == 0){
$prova = $new_width*$old_height/$old_width; //Mi calcolo l'altezza finale dell'immagine basandomi che la larghezza finale deve essere 145
}else{
$prova = $new_height*$old_width/$old_height;
}
}else{ //Altrimento
if ($con == 0){
$prova = $new_height*$old_width/$old_height; //Mi calcolo la larghezza finale dell'immagine basandomi che l'altezza finale deve essere 109
}else{
$prova = $new_width*$old_height/$old_width;
}
}
$prova2 = ceil($prova); //Arrotorndo il valore trovato
//Mi vado a elaborare l'immagine finale con i valori trovati
if ($old_width<$old_height) {
if ($con == 0){
imagecopyresampled($new_img,$temp_img,0,0,$x,$y,$new_width,$prova2,$old_width,$old_height);
}else{ //Altrimento
imagecopyresampled($new_img,$temp_img,0,0,$x,$y,$prova2,$new_height,$old_width,$old_height);
}
}else{
if ($con == 0){
imagecopyresampled($new_img,$temp_img,0,0,$x,$y,$prova2,$new_height,$old_width,$old_height);
}else{ //Altrimento
imagecopyresampled($new_img,$temp_img,0,0,$x,$y,$new_width,$prova2,$old_width,$old_height);
}
}
}
//FOTO PICCOLE
$temp_img_2 = $function_to_read('http://win.nomesito.it/public/prodotti/'.$immagine); //Prendi immagine
$new_img_2 = imagecreatetruecolor($new_width_2,$new_height_2); //Seleziona grandezza finale
$old_width_2 = imagesx($temp_img_2); //Leggi larghezza immagine
$old_height_2 = imagesy($temp_img_2); //Leggi altezza immagine
//x e y = coordinate per posizionamento foto
if ($old_width_2<$old_height_2) { //Se larghezza inferiore ad altezza
//$operazione1 = $old_height/90;
if ($old_height_2<$new_height_2){
$con_2 = 1;
$operazione5_2 = 0;
}else{
$con_2 = 0;
$operazione2_2 = $old_width_2*$new_height_2;
$operazione3_2 = $operazione2_2/$new_width_2;
if ($old_height_2 > $operazione3_2) {
$operazione4_2 = $old_height_2-$operazione3_2;
}else{
$con_2 = 1;
$operazione2_2 = $old_height_2*$new_width_2;
$operazione3_2 = $operazione2_2/$new_height_2;
$operazione4_2 = $old_width_2-$operazione3_2;
}
$operazione5_2 = $operazione4_2/2;
}
//$operazione6 = $operazione5*$operazione1;
if ($con_2 == 0){
$x_2 = 0; //x = 0
$y_2 = 0+$operazione5_2; //y = larghezza diviso 2 meno 652 --- pressocch il centro dell'immagine
}else{
$x_2 = 0+$operazione5_2; //x = altezza diviso 2 meno 1152 --- pressocch il centro dell'immagine
$y_2 = 0;
} //y = 0
}else{ //altrimento
//$operazione1 = $old_width/121;
if ($old_width_2<$new_width_2){
$con_2 = 1;
$operazione5_2 = 0;
}else{
$con_2 = 0;
$operazione2_2 = $old_height_2*$new_width_2;
$operazione3_2 = $operazione2_2/$new_height_2;
if ($old_width_2 > $operazione3_2) {
$operazione4_2 = $old_width_2-$operazione3_2;
}else{
$con_2 = 1;
$operazione2_2 = $old_width_2*$new_height_2;
$operazione3_2 = $operazione2_2/$new_width_2;
$operazione4_2 = $old_height_2-$operazione3_2;
}
$operazione5_2 = $operazione4_2/2;
}
//$operazione6 = $operazione5*$operazione1;
if ($con_2 == 0){
$x_2 = 0+$operazione5_2; //x = altezza diviso 2 meno 1152 --- pressocch il centro dell'immagine
$y_2 = 0; //y = 0
}else{
$x_2 = 0; //x = altezza diviso 2 meno 1152 --- pressocch il centro dell'immagine
$y_2 = 0+$operazione5_2;
} //y = 0
}
$x_2 = ceil($x_2); //Arrotondo x
$y_2 = ceil($y_2); //Arrotondo y
if ($old_width_2<$old_height_2) { //Se larghezza inferiore ad altezza
if ($con_2 == 0){
$prova_2 = $new_width_2*$old_height_2/$old_width_2; //Mi calcolo l'altezza finale dell'immagine basandomi che la larghezza finale deve essere 145
}else{
$prova_2 = $new_height_2*$old_width_2/$old_height_2;
}
}else{ //Altrimento
if ($con_2 == 0){
$prova_2 = $new_height_2*$old_width_2/$old_height_2; //Mi calcolo la larghezza finale dell'immagine basandomi che l'altezza finale deve essere 109
}else{
$prova_2 = $new_width_2*$old_height_2/$old_width_2;
}
}
$prova2_2 = ceil($prova_2); //Arrotorndo il valore trovato
//Mi vado a elaborare l'immagine finale con i valori trovati
if ($old_width_2<$old_height_2) {
if ($con_2 == 0){
imagecopyresampled($new_img_2,$temp_img_2,0,0,$x_2,$y_2,$new_width_2,$prova2_2,$old_width_2,$old_height_2);
}else{ //Altrimento
imagecopyresampled($new_img_2,$temp_img_2,0,0,$x_2,$y_2,$prova2_2,$new_height_2,$old_width_2,$old_height_2);
}
}else{
if ($con_2 == 0){
imagecopyresampled($new_img_2,$temp_img_2,0,0,$x_2,$y_2,$prova2_2,$new_height_2,$old_width_2,$old_height_2);
}else{ //Altrimento
imagecopyresampled($new_img_2,$temp_img_2,0,0,$x_2,$y_2,$new_width_2,$prova2_2,$old_width_2,$old_height_2);
}
}
//FOTO piccole2
$temp_img_3 = $function_to_read('http://win.nomesito.it/public/prodotti/'.$immagine); //Prendi immagine
$new_img_3 = imagecreatetruecolor($new_width_3,$new_height_3); //Seleziona grandezza finale
$old_width_3 = imagesx($temp_img_3); //Leggi larghezza immagine
$old_height_3 = imagesy($temp_img_3); //Leggi altezza immagine
//x e y = coordinate per posizionamento foto
if ($old_width_3<$old_height_3) { //Se larghezza inferiore ad altezza
//$operazione1 = $old_height/90;
if ($old_height_3<$new_height_3){
$con_3 = 1;
$operazione5_3 = 0;
}else{
$con_3 = 0;
$operazione2_3 = $old_width_3*$new_height_3;
$operazione3_3 = $operazione2_3/$new_width_3;
if ($old_height_3 > $operazione3_3) {
$operazione4_3 = $old_height_3-$operazione3_3;
}else{
$con_3 = 1;
$operazione2_3 = $old_height_3*$new_width_3;
$operazione3_3 = $operazione2_3/$new_height_3;
$operazione4_3 = $old_width_3-$operazione3_3;
}
$operazione5_3 = $operazione4_3/2;
}
//$operazione6 = $operazione5*$operazione1;
if ($con_3 == 0){
$x_3 = 0; //x = 0
$y_3 = 0+$operazione5_3; //y = larghezza diviso 2 meno 652 --- pressocch il centro dell'immagine
}else{
$x_3 = 0+$operazione5_3; //x = altezza diviso 2 meno 1152 --- pressocch il centro dell'immagine
$y_3 = 0;
} //y = 0
}else{ //altrimento
//$operazione1 = $old_width/121;
if ($old_width_3<$new_width_3){
$con_3 = 1;
$operazione5_3 = 0;
}else{
$con_3 = 0;
$operazione2_3 = $old_height_3*$new_width_3;
$operazione3_3 = $operazione2_3/$new_height_3;
if ($old_width_3 > $operazione3_3) {
$operazione4_3 = $old_width_3-$operazione3_3;
}else{
$con_3 = 1;
$operazione2_3 = $old_width_3*$new_height_3;
$operazione3_3 = $operazione2_3/$new_width_3;
$operazione4_3 = $old_height_3-$operazione3_3;
}
$operazione5_3 = $operazione4_3/2;
}
//$operazione6 = $operazione5*$operazione1;
if ($con_3 == 0){
$x_3 = 0+$operazione5_3; //x = altezza diviso 2 meno 1152 --- pressocch il centro dell'immagine
$y_3 = 0; //y = 0
}else{
$x_3 = 0; //x = altezza diviso 2 meno 1152 --- pressocch il centro dell'immagine
$y_3 = 0+$operazione5_3;
} //y = 0
}
$x_3 = ceil($x_3); //Arrotondo x
$y_3 = ceil($y_3); //Arrotondo y
if ($old_width_3<$old_height_3) { //Se larghezza inferiore ad altezza
if ($con_3 == 0){
$prova_3 = $new_width_3*$old_height_3/$old_width_3; //Mi calcolo l'altezza finale dell'immagine basandomi che la larghezza finale deve essere 145
}else{
$prova_3 = $new_height_3*$old_width_3/$old_height_3;
}
}else{ //Altrimento
if ($con_3 == 0){
$prova_3 = $new_height_3*$old_width_3/$old_height_3; //Mi calcolo la larghezza finale dell'immagine basandomi che l'altezza finale deve essere 109
}else{
$prova_3 = $new_width_3*$old_height_3/$old_width_3;
}
}
$prova2_3 = ceil($prova_3); //Arrotorndo il valore trovato
//Mi vado a elaborare l'immagine finale con i valori trovati
if ($old_width_3<$old_height_3) {
if ($con_3 == 0){
imagecopyresampled($new_img_3,$temp_img_3,0,0,$x_3,$y_3,$new_width_3,$prova2_3,$old_width_3,$old_height_3);
}else{ //Altrimento
imagecopyresampled($new_img_3,$temp_img_3,0,0,$x_3,$y_3,$prova2_3,$new_height_3,$old_width_3,$old_height_3);
}
}else{
if ($con_3 == 0){
imagecopyresampled($new_img_3,$temp_img_3,0,0,$x_3,$y_3,$prova2_3,$new_height_3,$old_width_3,$old_height_3);
}else{ //Altrimento
imagecopyresampled($new_img_3,$temp_img_3,0,0,$x_3,$y_3,$new_width_3,$prova2_3,$old_width_3,$old_height_3);
}
}
if ($old_width > $new_width && $old_height > $new_height) {
//salvo l'immagine grande (l'ultimo valore va da 10 a 100 ed il livello di compressione)
imagejpeg($new_img , 'http://lnx.nomesito.it/public/prodotti/'.$immagine,100);
imagedestroy($new_img);
}
//salvo l'immagine piccola (l'ultimo valore va da 10 a 100 ed il livello di compressione)
imagejpeg($new_img_2 , 'http://lnx.nomesito.it/public/prodotti-mini/'.$immagine,100);
imagedestroy($new_img_2);
//salvo l'immagine piccola2 (l'ultimo valore va da 10 a 100 ed il livello di compressione)
imagejpeg($new_img_3 , 'http://lnx.nomesito.it/public/prodotti-mini2/'.$immagine,100);
imagedestroy($new_img_3);
header("location: [url]http://win.nomesito.it/admin/catalogo.asp?azione=catalogo_aggiungi_immagine_prodotto&id=[/url]".$id."&proviene_da=".$proviene_da."&cat_select=".$cat_select."&titolo=".$titolo."&categoria=".$categoria."&sottocategoria=".$sottocategoria."&descrizione=".$descrizione."&codice=".$codice."&prezzo=".$prezzo."&titolo_ric=".$titolo_ric."&categoria_ric=".$categoria_ric."&sottocategoria_ric=".$sottocategoria_ric."&ordina_ric=".$ordina_ric."&nuovo=".$nuovo."&online=".$online."&vetrina=".$vetrina."&scrollx=".$scrollx);
?>