problema con move_uploaded_file

  • Creatore Discussione Creatore Discussione freez
  • Data di inizio Data di inizio

freez

Nuovo Utente
15 Mar 2007
7
0
0
Salve a tutti,
ho provato a fare l'upload di un file sul server tramite la funzione move_uploaded_file() e tutto sembra andare bene....
non mi riporta nessun errore e il file "uploadato" viene copiato nella cartella di destinazione...
il problema è che il file cosi copiato me lo ritrovo di 0byte e ovviamente non riesco ad aprirlo!!
Ho provato a eseguire lo stesso codice (tra l'altro molto semplice) sul pc di un amico e funziona, ma sul mio MAC non c'è verso!!
come posso fare!?!
Ho controllato php.ini e sembra tutto apposto...per quel che ne so perlomeno....
Forse è un problema di apache...ma non so proprio come risolverlo...
qualcuno ha idea di cosa potrebbe essere??
Vi prego aiuto!!!!!!!!!!:dipser: :dipser: :dipser:

ps: ecco il codice
Codice:
<?php error_reporting(E_ALL); ?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">

<HTML lang="en">
<HEAD>
    <TITLE></TITLE>
</HEAD>
<BODY>
  
  <form enctype="multipart/form-data" method="POST">

    <!--input type="hidden" name="MAX_FILE_SIZE" value="30000"--> 
    Invia questo file: <input name="adFile" type="file"> 
    <input type="submit" value="Invia File">

  </form>
  
  <?php
      
    print_r($_FILES); //$avar = $_FILES['adFile'];
    
    //$tmp = explode(".",$avar['name']);
    //print_r($tmp);
    
    if(move_uploaded_file($_FILES['adFile']['tmp_name'], $_FILES['adFile']['name']))
      print("yessa");
    else
      print("notta");
    
    /*if(is_uploaded_file($_FILES['adFile']['tmp_name']))print("si");
    else print("\n no");*/
  ?>
  
    
</BODY>
</HTML>
 
.....niente.....anche con il codice del link non funziona...
sempre il solito problema...

il file lo trasferisce....ma poi non posso aprirlo!

Tra l'altro ho provato a confrontare i valori che mi da phpinfo() fra il mio apache e il server macos che abbiamo all'università, ma per quel che credo riguardi questo aspetto (l'upload) sembrano identiche le due configurazioni!!
 
la copia del file la sto provando sul mio computer..in locale...non su un server vero e proprio..dove molto probabilmente funzionerebbe...
me lo copia nella cartella che voglio..ma con dimensioni pari a 0 e non posso quindi aprirlo....
 
ciao, prova ad utilizzare questo codice:

in una pagina che chiamiamo file.html posta un semplice form

HTML:
<form name="inviofile" action="invia.php" method="post"  enctype="multipart/form-data"> 

<input type="file" name="miofile"> 

<input type="submit" name="invia" value="invia">

</form>

mentre in invia.php, inserisci il seguente codice

Codice:
$path = "";
$cartella = 'immagini/';
$nome = $_FILES['miofile']['tmp_name'];
$percorso = $_FILES['miofile']['tmp_name'];
if (move_uploaded_file($percorso, $cartella . $nome))
{
 $path = "immagini/".$nome; //in path ci sarà il percorso completo del file
 echo("file salvato nel percorso ".$path);
}


ho scritto velocemente ci potrebbero essere errori, in ogni caso dovrebbe funzionare.
Poi ovviamente decidi tu eventuali restrizioni tipo se è un'immagine definire la sua grandezza ecc...
 
Ultima modifica:
con il codice che hai postato non funziona...credo perche' a $name hai assegnato 'tmp_name' dell'array FILES, che contiene l'intero percorso della cartella temporanea.....
cmq cambiando il valore di $name il prog funziona, come al solito sposta il file nella cartella voluta, ma poi non mi permette di aprirlo!perche ridotto a 0Kb di dimensione....

Il problema non credo che sia nel codice php....uso php continuamente per i miei studi e l'upload di files mi è sempre riuscito.....
credo che il problema sia nelle impostazioni di apache o di php stesso (intendo di php.ini).......

che pezza!

:incazz2: :incazz2:

:(
 
dal php.ini controlla che siano corretti questi valori:
file_uploads = On
upload_max_filesize = (imposta una grandezza in Mb, controlla che non sia 0 come tu dici)

domanda, hai impostato i chmod a 777?
 

Discussioni simili