prova con una roba del genere (l'ho scritta ma non controllata, a occhio dovrebbe andare però):
Codice PHP:
$cartellaDati="users/".$user;
mkdir($cartellaDati,0755);
$path="/web/htdocs/www.verybear.com/home/verybear/users/".$user."/"
if(
$UploadedFile != none){
    
$source=$path."/".$UploadedFile_name;
    
copy$UploadedFile$source )or die(mysql_error());
    
resize($UploadedFile$source$path$new_width$new_height);
}

//$new_width, $new_height sono le dimensioni della immagine finale

function resize($nomeimage$source_path$destination_path$new_width$new_height){
    list(
$width$height$type$attr) = getimagesize($source_path.$nomeimage);
    
$compression=100;
    
$destimg=imagecreatetruecolor($new_width,$new_height) or die("Problemi nelle creazioni dell'immagine");
    
$srcimg=ImageCreateFromJPEG($source_path.$nomeimage) or die("Problemi nell'aprire l'immagine");
    
$w=ImageSX($srcimg);
    
$h=ImageSY($srcimg);
    
$ro=$new_width/$new_height;
    
$ri=$w/$h;
    if(
$ro<$ri){
        
$par="h"//immagine alta, verticale
    
}else{
        
$par="w"//immagine larga, orizzontale
    
}
    if(
$par=="h"){
        
$ih=$h;
        
$conv=$new_width/$new_height;
        
$iw=$conv*$ih;
        
$cw=($w/2)-($iw/2);
        
$ch=($h/2)-($ih/2);
    }else if(
$par=="w"){
        
$iw=$w;
        
$conv=$new_height/$new_width;
        
$ih=$conv*$iw;
        
$cw=($w/2)-($iw/2);
        
$ch=($h/2)-($ih/2);
    }

//qui poi ci andrà messo un ciclo per verificare il tipo di immagine, ora diamo per scontato che sia jpg

    
ImageCopyResized($destimg,$srcimg,0,0,$cw,$ch,$new_width,$new_height,$iw,$ih) or die("Problemi nel ridimensionamento");
    
ImageJPEG($destimg,$destination_path.$nomeimage,$compression) or die("Problemi nel salvataggio");