Hola xtommy2.
Io faccio cosi:
Creati una tabella con i seguenti campi:
id
foto1
foto1p
descrizione
--------------------------------------------
poi:
sono sicuro che un form lo sai fare........!!!!!!!!!!!!!!!!!
--------------------------------------------
Il form lo invii a questa pagina (chiamala come ti pare)
	Codice PHP:
	
<?php
include // qui includi le classi
$foto = str_replace(' ', '', $foto); // nel caso hai spazi tra il nome della foto, esempio: pippo pippotto
if($_FILES['foto']){
    $immagine=$_FILES['foto']['tmp_name'];
    $I=new IMG($immagine);
    $type=$I->getType();
    if($type!="jpeg"&&$type!="png") echo "
";
    else {$type=($type=="jpeg")?"jpg":$type;
        $nome=$_FILES['foto']['name'];
        if(file_exists(str_replace(".","_b","img/".$nome))) echo "Attenzione un'immagine con questo nome esiste già!!! Rinomina l'immagine.
";
        else { 
            // immagine grande
            $I=new IMG($immagine);
            $I->resize_max(300,200); // scegli tu le dimensioni della immagine in questo caso 300 x 200
            $foto1=str_replace(".","_m.",$nome);
            $I->save("img/$foto1");
            
            $I=new IMG($immagine);
            $I->centro_proporzionato(150,130); 
            //Immagine piccola proporzionata, se vuoi escludila e fai la piccola come sopra scegliendo le dimensioni
            $foto1p=str_replace(".","_p.",$nome);
            $I->save("img/$foto1p");
            echo "Immagine 1 creata.
";
            echo $nome;
        }
    }
}
if ($dir = @opendir("img")) // nome cartella a tua scelta in questo caso IMG
    {
   while (($file = readdir($dir)) !== false) 
       {
     if($file != "." && $file != ".." && !is_dir("img/$file")) 
         {  
        $filename = "img/".$file;
        if(substr($filename,-6,-3)=="_p.")
            {
        }
     }  
   }
}
closedir($dir);
// qui la connessione data base
// poi la query INSERT
?>
 
Queste sono le classi da includere nella pagina che riceve i dati dal form.
	Codice PHP:
	
<?php
/* -----> dichiarazione funzione "SAVE"
        salva l'immagine con il nome passato
    */
    function save($nome,$qualita="60"){
        if($this->_x==0||$this->_y==0) return FALSE;
        else {
            $func="image".$this->_type;
            $ok=call_user_func($func,$this->_img,$nome);
            if($ok!=FALSE) return FALSE;
            else {
                return TRUE;
            }
        }
    }
    /*-----> dichiarazione funzione "IMG CENTRALE"
        prende l'area centrale dell'immagine di dimensioni definite 
        e la ridimensiona alle nuove dimensioni che vengono passate 
        GD2 nuove .... :o)
    */
    function centro_proporzionato($width="",$height=""){
        if($this->_x==0||$this->_y==0) return FALSE;
        else {
            $scale=min($this->_x/$width,$this->_y/$height);
            $por_w=$width*$scale;
            $por_h=$height*$scale;
            $x=($this->_x-$por_w)/2;
            $y=($this->_y-$por_h)/2;
            $newimg=imagecreatetruecolor($width,$height);
            $ok=imagecopyresampled($newimg,$this->_img,0,0,$x,$y,$width,$height,$por_w,$por_h); //imagecopyresampled GD2
            $this->_x=$width;
            $this->_y=$height;
            if($ok==FALSE) return FALSE;
            else {
                $this->_img=$newimg;
                return TRUE;
            }
        }
    }
    /* -----> dichiarazione funzione "SAVE"
        salva l'immagine con il nome passato
    */
    function save($nome,$qualita="60"){
        if($this->_x==0||$this->_y==0) return FALSE;
        else {
            $func="image".$this->_type;
            $ok=call_user_func($func,$this->_img,$nome);
            if($ok!=FALSE) return FALSE;
            else {
                return TRUE;
            }
        }
    }
        
?>
 
Dovrebbe funzionare!
Spero di non aver dimenticato nulla.!
Facci sapere!!!!!