controlla nel php.ini l'impostazione upload_max_filesize (di default 2 megabyte)

Per quel che riguarda il problemma accennato da alcio74 io utilizzo questo filtro (e sembra funzionare

Codice PHP:
$new_name preg_replace
                     array(
"/\s+/""/[^-\.\w]+/"), 
                     array(
"_"""), 
                     
trim($_FILES['upload']['name'])); 
In pratica sono ammessi: A-Z, a-z, 0-9 . -
Gli spazi sono sostituiti con _
gli altri caratteri invece sono eliminati