Raga, ho trovato una funzione che fa al caso mio. L'ho quindi adattata alle mie esigenze, ma ho un piccolo problema, non so come dare un nome dinamico al nuovo file creato. Sto ancora imparando ad utilizzare le funzioni, so che è sicuramente qualcosa di semplicissimo, ma non riesco:

Codice PHP:
function resizeImage$file$width 0$height 0$proportional false$output 'file') {
    
$info getimagesize($file);    $image '';    
$final_width 0;    $final_height 0;    
list(
$width_old$height_old) = $info;    
if (
$proportional) {        
if (
$width == 0$factor $height/$height_old;        
elseif (
$height == 0$factor $width/$width_old;        
else 
$factor min $width $width_old$height $height_old);          
$final_width round ($width_old $factor);        
$final_height round ($height_old $factor);    }    
else {    if ((
$width_old == 320) && ($height_old == 50)){        
$final_width 320;        
$final_height 50;    }
elseif((
$width_old == 640) && ($height_old == 100)){        
$final_width 320;        
$final_height 50;    }
           }    
switch ( 
$info[2] ) {        
case 
IMAGETYPE_GIF:            $image imagecreatefromgif($file);        break;        
case 
IMAGETYPE_JPEG:            $image imagecreatefromjpeg($file);        break;        case IMAGETYPE_PNG:         $image imagecreatefrompng($file);        break;        
default:            return 
false;    }            
$image_resized imagecreatetruecolor$final_width$final_height );                
if ( (
$info[2] == IMAGETYPE_GIF) || ($info[2] == IMAGETYPE_PNG) ) {        
$trnprt_indx imagecolortransparent($image);
        if (
$trnprt_indx >= 0) {            
$trnprt_color    imagecolorsforindex($image$trnprt_indx);            
$trnprt_indx    imagecolorallocate($image_resized$trnprt_color['red'], $trnprt_color['green'], $trnprt_color['blue']);            
imagefill($image_resized00$trnprt_indx);            
imagecolortransparent($image_resized$trnprt_indx);        }         
elseif (
$info[2] == IMAGETYPE_PNG) {            
imagealphablending($image_resizedfalse);            
$color imagecolorallocatealpha($image_resized000127);            
imagefill($image_resized00$color);            
imagesavealpha($image_resizedtrue);        
}    
}    
imagecopyresampled($image_resized$image0000$final_width$final_height$width_old$height_old);                
switch ( 
strtolower($output) ) {        
case 
'browser':            $mime image_type_to_mime_type($info[2]);            
header("Content-type: $mime");            
$output NULL;        break;        
case 
'file':            
$output $file;        
break;        
case 
'return':            
return 
$image_resized;        break;        
default:        break;    }    
switch ( 
$info[2] ) {        
case 
IMAGETYPE_GIF:            imagegif($image_resized$output);        break;        
case 
IMAGETYPE_JPEG:            imagejpeg($image_resized$output);        break;        
case 
IMAGETYPE_PNG:            imagepng($image_resized$output);        break;        
default:            return 
false;    }    
return 
true;}

$test $_FILES["image_upload_box"]["tmp_name"];
resizeImage($test"320""50"false"image_files/prova.gif");
echo 
'<img src="image_files/prova.gif">'
La parte che mi interessa è questa:
resizeImage($test, "320", "50", false, "image_files/prova.gif");
come faccio a chiamare la nuova immagine con qualcosa tipo: "images/".rand(0,100).$_FILES["image_upload_box"]["name"];

Spero possiate aiutarmi!