Ho Risolto, mancava l'enctype nel form...in + ho corretto un piccolo bug nei controlli della classe...se a qualcuno interessasse, vi posto il sorgente completo, e le istruzioni per un facile upload!

pagina: upload.class.inc.php

Codice PHP:
<?php

class Uploader {
 
 var 
$max_file_size 0;
 var 
$estensioni_consentite = array();
 var 
$opzioni_upload = array();
    
    function 
max_size($valore)
    {
        
$this->max_file_size $valore;
    }
    
    function 
estensioni_ok($array)
    {
        
$this->estensioni_consentite $array;
    }
    
    function 
opzioni_up($array)
    {
        
$this->opzioni_upload $array;
    }

    function 
upload_file($nome_campo_form$cartella_upload)
    {
     
$msg 0// se 0 estensione non consentita
     
$overwrite 1// se 0 rinomina
     
        
$nome_file $_FILES[$nome_campo_form]['name'];

        if(
$max_file_size != 0)
        {
            if(
$_FILES[$nome_campo_form]['size'] > $max_file_size)
            {
                die(
"Il File è troppo Grande!");
            }
        }
        
        foreach(
$this->opzioni_upload as $key => $value)
        {
            if(
$key == 'lock_ext')
            {
                 if(
$value == 1)
                 {
                    
$file_split explode(".",$nome_file);
                
                    
$estensione array_pop($file_split);
                
                    foreach(
$this->estensioni_consentite as $valore)
                    {
                        if(
$estensione == $valore)
                        {
                            
$msg 1;
                        }
                    }
                } else {
                    
$msg 1;    
                }    
            }
            
            if(
$key == 'overwrite')
            {
                if(
$value == 1)
                {
                    
$overwrite 1;
                } else {
                    
$overwrite 0;
                }
            }
            
        }
    
        if(
$msg == 0)
        {
            die(
"Estensione non Consentita!");
        }
    
        if(
is_uploaded_file($_FILES[$nome_campo_form]['tmp_name']))
        {
            if(
$overwrite == 0)
            {
                if(
file_exists($cartella_upload.$nome_file))
                {
                    
$casnum rand(0,9999999999);
                    
                    
$filenome dividinome($nome_file);
                    
                    
$nome_file $filenome.'('.$casnum.').'.$estensione;
                }
            }
            
            if(
move_uploaded_file($_FILES[$nome_campo_form]['tmp_name'], $cartella_upload.$nome_file))
            {
                print(
"Upload Riuscito!");
            } else {
                die(
"Errore nell'Upload del File");
            }
        } else {
            die(
"Errore nell'Upload del File");
        }
    }
    
    function 
dividi_nome($nome)
    {
        
$fsplit explode('.',$nome);
        
        
$vai count($fsplit);
        
        
$i=0;
        
        while(
$i<$vai 1)
        {
            if(
$i==$vai 2)
            {
                
$nome.=$fsplit[$i];
            } else {
                
$nome.=$fsplit[$i].'.'
            }
            
         
$i++;
        }
        
     return 
$nome;
    }
    
}

?>
Pagina di Esempio: esempio.php

Codice PHP:
<?php
    
// include la classe che io ho messo nella sottocartella libs
    
include("libs/upload.class.inc.php");
    
    
// valorizzo la variabile
    
$test = new Uploader();
    
    
// imposto le opzioni
    // lock_ext = 1, permette  di scegliere le estensioni consentite;
    // overwrite = 1, sovrascrive il file; impostato a 0 rinomina il file uppato.
    
$test->opzioni_up(array('lock_ext' => 1'overwrite' => 1));
    
    
// se lock_ext è messo ad 1, con questa funzione si scelgono le estensioni consentite
    
$test->estensioni_ok(array('zip''rar''mp3''jpg' 'gif'));
    
    
// uppa il file
    // al posto di userfile ci va il nome del campo di tipo file del form
    // al posto di files/ ci va la cartella dove andranno uppati i files
    
$test->upload_file('userfile','files/');
?>
questo è il form di upload di esempio: esempio.html

codice:
<html>
<head>
<title>Prova</title>
</head>

<body>
<form enctype="multipart/form-data" action='esempio.php' method='POST'>
<input type='file' name='userfile' />
<input type='submit' value='upload' />
</form>
</body>

</html>
Spero possa servire a qualcuno, lasciate commenti o critiche se volete!