Ho costruito una funzione che gestisce il caricamento di un file ..... il problema è che se utilizzo il codice all'esterno di una funzione va tutto bene; se cerco di gestire il caricamento tramite la chiamata di una funzione, si blocca al primo controllo ossia mi dice "file non caricato" e $FileNameOnClient è vuota.
Quello che non capisco è che mi riferisco ai dati con variabili globali, perchè non funzionano dentro la funzione???
Thxx
function upload_img($dir_foto_strutture,$id_struttura){
$FileNameOnClient = $HTTP_POST_FILES['file']['name'];
//$FileNameOnClient = $_FILES['file']['name']; //il nome originale del file preso dal computer dell'utente
$tipo_file=$HTTP_POST_FILES['file']['type'];
echo "FileNameOnClient".$FileNameOnClient;
if (!is_uploaded_file($HTTP_POST_FILES['file']['tmp_name'] )) {
echo "
file non caricato";
echo "
e: ".$HTTP_POST_FILES['file']['error'] ;
}
else{
$FileNameOnClient=str_replace(" ","_",$FileNameOnClient);
$src=$_FILES['file']['tmp_name']; //nome temporaneo del file quando viene caricato
/** Controllo formato **/
if(($tipo_file != "image/gif") AND ($tipo_file != "image/pjpeg") AND ($tipo_file !="image/jpeg")) {
echo "formato non ammesso";
$prova=unlink($src);
}
else{
if(!is_dir("./$dir_foto_strutture/$id_struttura")){
mkdir("./$dir_foto_strutture/$id_struttura");
chmod("./$dir_foto_strutture/$id_struttura",0777);
}
$dest="./$dir_foto_strutture/$id_struttura/$FileNameOnClient";
if (!move_uploaded_file($src,$dest)) {
$prova=unlink($src);
echo "errore copia";
}
}
}
}