Estou tentando criar um script de upload e estoutendo problemas com o IE8 e anteriores. (é claro;)) Em todos os outros navegadores funciona bem, mas no IE8 o array $ _FILES está vazio. Este é o código html que está sendo usado:
<FORM method=post action=api/upload.php target=form8230839>
<INPUT name=file type=file>
<INPUT value="Submit Query" type=submit>
<INPUT name=id value=id66130748349062623150808191 type=hidden>
</FORM>
<IFRAME id=form8230839 name=form8230839></IFRAME>
(observe que o código está sendo gerado por javascript createElement, portanto, o IE8 o está escrevendo com maiúsculas e sem aspas nos atributos.)
Então, no arquivo php, estou fazendo:
print_r($_FILES);
que retorna apenas como uma matriz vazia? Qualquer ajuda seria ótimo. Obrigado!
Respostas:
3 para resposta № 1Adicionar enctype="multipart/form-data"
à sua tag de formulário.
Spec: http://www.w3.org/TR/html401/interact/forms.html#h-17.13.4.2
0 para resposta № 2
Sua pergunta parece ser uma possível duplicata desta:
O array $ _FILES em PHP está vazio
No entanto, como outros apontaram, e também do anexo, a solução é adicionar:
enctype="multipart/form-data"
ao seu formulário.