2011-11-23 8 views
5

Sto presentando file tramite questo modo, all'interno di una forma (con un pulsante di invio, tag form, etc.):

<fieldset> 
     <input type="file" name="file" /> 
    </fieldset> 

e sto cercando di tirarlo/usarlo con PHP in questo modo:

$file = $orgname."/".basename($_FILES['file']['name']); 
move_uploaded_file($_FILES['file']['tmp_name'], $file); 

E sto ottenendo questi errori:

Notice: Undefined index: file in C:\wamp\www\generic\addorg.php on line 45 

Notice: Undefined index: file in C:\wamp\www\generic\addorg.php on line 46 

cosa potrebbe causare questo? Tutto ciò che ho esaminato suggerisce che dovrebbe funzionare.

+2

Non sono sicuro che il problema esatto, ma un buon strumento di debug è quello di print_r vostro $ _FILES e vedere cosa c'è dentro. – Aerik

risposta

24

modulo deve essere impostato enctype=multipart/form-data

+0

Sembra funzionare, ma ora ricevo errori "Impossibile spostare" e "Impossibile aprire stream". –

+0

probabilmente un problema di permessi jake – billynoah

+0

+ 10, questo ha risolto il mio problema. –

-4

provare lanciando la vostra barra in quanto si utilizza una macchina Windows

$file = $orgname . '\\' . basename($_FILES['file']['name']); 
+0

Non solo non importa, ma inserendo una barra rovesciata tra virgolette doppie, è sfuggita la seconda citazione. – Brad

+0

Meglio ora :-)? – abcde123483

+0

Hai ancora bisogno di uscire dal \ – jprofitt

6

Assicurati che il tuo <form... specifica enctype="multipart/form-data">

3

Avete impostato l'enctype attributo del modulo per: multipart/form-data?

<form action="/some_action.php" enctype="multipart/form-data" method="post"> 
    <fieldset> 
    <input type="file" name="file" /> 
    <input type="submit" name="some_name" value="Submit" id="some_name" /> 
    </fieldset> 
</form> 
3

provare questo:

<form action="something.php" enctype="multipart/form-data" method="post"> 
    <input type="file" name="file" /> 
    <input type="hidden" name="MAX_FILE_SIZE" value="5242880" /> 
</form>