Ho provato con questo script:

Codice PHP:
/**
   * Crea una copia ridimensionata dell'immagine passata nel path passato
   *
   * @param string $path percorso di destinazione
   * @param string $immagine Immagine originale (con percorso)
   * @param int $Xmax Larghezza massima dell'immagine
   * @param int $Ymax Altezza Massima dell'immagine
   * @param string $name Nome dell'immagine
   * @param int $quality Percentuale di compressione jpeg
   *
   */
  
function thumbnail($path$immagine$Xmax$Ymax$name$quality=90$debug=1) {

$path $abpath "uploads/thumbs/";
$immagine $abpath "uploads/$Img1_Nome";
$Xmax "120";
$Ymax "120";
$name "$Img1_Nome";

    
$estensione strtolower(array_pop(explode(".",$name)));


    list(
$width_orig,$height_orig) = getimagesize($immagine);

    if(
$debug) {
      echo 
"<ul>";
      echo 
"[*]Estensione immagine : ".$estensione."";
      echo 
"[*]Larghezza originale : ".$width_orig."";
      echo 
"[*]Altezza originale : ".$height_orig."";

    }

    if((
$width_orig<$Xmax) && ($height_orig<$Ymax)) {

      if(
$debug) {
        echo 
"[*]immagine copiatata da $immagine a ".$path.$name."";
      }

      
copy($immagine$path.$name);

    } else {

      if(
$Xmax == 0) {  // FIXED Y

        
$yg=$Ymax;

        
$xg=($Ymax/$height_orig)*$width_orig// FOTO VERTICALE

      
} elseif ($Ymax == 0) { // FIXED X

        
$xg=$Xmax;

        
$yg=($Xmax/$width_orig)*$height_orig;

      } elseif (
$width_orig>$height_orig) { // FOTO ORIZZONTALE

        
$xg=$Xmax;

        
$yg=($Xmax/$width_orig)*$height_orig;

      }else { 
// FOTO VERTICALE

        
$yg=$Ymax;

        
$xg=($Ymax/$height_orig)*$width_orig// FOTO VERTICALE

      
}

      if(
$debug) {
        echo 
"[*]Nuove dimensioni: x:$xg, y:$yg";

      }


      switch(
$estensione) {

        case 
"jpg":

        case 
"jpeg":

          
$source ImageCreateFromJpeg($immagine);

          
$dest imagecreatetruecolor($xg$yg);

          
ImageCopyResampled($dest$source0000$xg,$yg$width_orig$height_orig);

          
$newimg $path.$name;

          
ImageJpeg ($dest$newimg,$quality);

        break;

        case 
"gif" :

          
$source imagecreatefromgif($immagine);

          
$dest imagecreatetruecolor($xg$yg);

          
ImageCopyResampled($dest$source0000$xg,$yg$width_orig$height_orig);

          
$newimg $path.$name;

          
ImageGif($dest$newimg);

        break;

        case 
"png" :

          
$source imagecreatefrompng($immagine);

          
$dest imagecreatetruecolor($xg$yg);

          
ImageCopyResampled($dest$source0000$xg,$yg$width_orig$height_orig);

          
$newimg $path.$name;

          
ImagePng($dest$newimg);

        break;

        }

      
chmod($newimg0666);

    }

    return 
$name;

  } 
Anche col debug impostato su 1 non mi mostra alcun messaggio e non accade nulla. Dove sto sbagliando??