innanzitutto - banale - controlla, se puoi, di avere i permessi in scrittura per la cartella di destinazione del filesystem.
questi settaggi dovrebbero essere rispettati:
chown -R nobody uploaddir
chmod -R 755 uploaddir
Poi controlla il tuo php.ini -->
;;;;;;;;;;;;;;;;
; File Uploads ;
;;;;;;;;;;;;;;;;
; Whether to allow HTTP file uploads.
file_uploads = On
; Temporary directory for HTTP uploaded files (will use system default if not
; specified).
;upload_tmp_dir =
; Maximum allowed size for uploaded files.
upload_max_filesize = 2M
bye