Ora hai risolto, però quando esegui un upload ti conviene convertire il nome del file eliminando i caratteri speciali, che possono dare problemi in alcuni casi. Pensa ad esempio se un utente che usa linux invia un file e magari il tuo server è windows, o viceversa; i caratteri consentiti nei nomi di files sono diversi tra linux e windows quindi possono nascere problemi. Puoi usare una funzione come questa:
Codice PHP:
/*
Dato un nome di file, lo ripulisce da tutti i caratteri speciali e lettere accentate
e restituisce il nuovo nome. Per upload di files.
Codice originario: [url]http://www.phpclasses.org/browse/file/6673.html[/url]
*/
function fix_file_name($string){
$string = strtr ($string, "ÀÁÂÃÄÅàáâãäåÒÓÔÕÖØòóôõöøÈÉÊËèéêëÇçÌÍÎÏìíîïÙÚÛÜùúûüÿÑñ", "AAAAAAaaaaaaOOOOOOooooooEEEEeeeeCcIIIIiiiiUUUUuuuuyNn");
for($i=0 ; $i < strlen($string); $i++) {
if(!ereg("([0-9A-Za-z_\.])",$string[$i]))
$string[$i] = "_";
}
return $string;
}