segunda-feira, 16 de janeiro de 2012

Variável Reservada $_FILES


Continuando a falar sobre formulários HTML. Hoje vamos ver como trabalhamos com envio de arquivos pelo formulário HTML.



Para criarmos um formulário para trabalhar com arquivos vamos precisar colocar no HTML duas coisas novas, que são o enctype e o tipo do input.

O Enctype é necessário declaramos, pois, o valor default do enctype é "text/plain", e com esse valor default não é possível trabalhar com arquivos no form.

Então devemos mudar o enctype para "multipart/form-data". Vejamos a mudança abaixo.

<form action="processaForm.php" method="POST" enctype="multipart/form-data">

A proxima mundança seria o tipo do input. o novo tipo dela será "file". Veremos abaixo:

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

Com isso, já temos um formulário que é capaz de trabalhar com arquivos. Agora vamos ver mais a fundo a variável reservada $_FILES.

A variável $_FILES é uma matriz, onde temos as seguintes opções.


<?php
//Com essa matriz de dados, podemos ter as informações do arquivo que foi enviado.
//O primeiro indice da matriz, é o nome do input no form html.

echo $_FILES["arquivo"]["size"]; //Printa na tela o tamanho do arquivo em Bites.

echo $_FILES["arquivo"]["name"]; //Printa na tela o nome do arquivo.

echo $_FILES["arquivo"]["tpm_name"]; //Printa o nome temporario do arquivo no servidor.

echo $_FILES["arquivo"]["type"]; //Printa na tela o tipo do arquivo.

?>

No final, o formulário HTML ficará assim:

<form action="processaForm.php" method="POST" enctype="multipart/form-data">
<label>Arquivo: </label><input type="file" name="arquivo" />
<input type="submit" value="Enviar" />
</form>


Nota: o "method" do formulário deve ser somente "POST"

Então galera, isso é o básico para mexer com arquivos nos formulário HTML. Agora, para fazer a manipulação desse arquivo que foi enviado, irei fazer um tutorial de como fazer uploads. Fiquem no aguardo, mas se alguém for apressadinho, a função que faz upload chama-se "move_uploaded_file();".

Abraços!

Nenhum comentário:

Postar um comentário