Mudanças entre as edições de "Como fazer upload de arquivos via PHP?"

De Wiki
Ir para: navegação, pesquisa
 
Linha 17: Linha 17:
 
  <body>
 
  <body>
 
   
 
   
:<form action="envia.php" enctype="multipart/form-data" method="POST">
+
      <form action="envia.php" enctype="multipart/form-data" method="POST">
:Selecione o arquivo desejado: <input name="arquivo" size="20" type="file"/>
+
      Selecione o arquivo desejado: <input name="arquivo" size="20" type="file"/>
:<input type="submit" value="Enviar"/>
+
      <input type="submit" value="Enviar"/>
:</form>
+
      </form>
 
   
 
   
 
  </body>
 
  </body>
Linha 38: Linha 38:
 
  <?php
 
  <?php
 
   
 
   
:       /* Insira aqui a pasta que deseja salvar o arquivo. Ex: imagens */
+
       /* Insira aqui a pasta que deseja salvar o arquivo. Ex: imagens */
:
+
 
:       $uploaddir = 'imagens/';
+
       $uploaddir = 'imagens/';
:
+
 
:       $uploadfile = $uploaddir . $_FILES['arquivo']['name'];
+
       $uploadfile = $uploaddir . $_FILES['arquivo']['name'];
:
+
 
:       if (move_uploaded_file($_FILES['arquivo']['tmp_name'], $uploadfile)){
+
       if (move_uploaded_file($_FILES['arquivo']['tmp_name'], $uploadfile)){
:
+
 
:       echo "Arquivo Enviado";}
+
       echo "Arquivo Enviado";}
:
+
 
:       else {echo "Houve um problema no upload do arquivo.";}
+
       else {echo "Houve um problema no upload do arquivo.";}
+
 
 
  ?>
 
  ?>
 
   
 
   
Linha 79: Linha 79:
  
 
'''<nowiki>http://<seu_domínio>/upload.html</nowiki>'''
 
'''<nowiki>http://<seu_domínio>/upload.html</nowiki>'''
 +
  
 
O script irá gravar o arquivo selecionado para upload na mesma pasta que foi definida através do arquivo '''envia.php'''.
 
O script irá gravar o arquivo selecionado para upload na mesma pasta que foi definida através do arquivo '''envia.php'''.
 
</font>
 
</font>

Edição atual tal como às 09h19min de 24 de maio de 2016

O exemplo abaixo demonstra como efetuar upload utilizando um formulário HTML:


1° passo: Criando o formulário de envio

Crie um arquivo HTML com o nome upload.html ou insira o código em seu formulário já existente, conforme abaixo.

Formulariophp.jpg


O código do formulário acima é o seguinte:

<html> 

<body>

     <form action="envia.php" enctype="multipart/form-data" method="POST">
     Selecione o arquivo desejado: <input name="arquivo" size="20" type="file"/>
     <input type="submit" value="Enviar"/>
     </form>

</body>

</html>


2° passo: Criando o script PHP

Crie um arquivo chamado envia.php com o seguinte conteúdo:

<html>

<body>

<?php

     /* Insira aqui a pasta que deseja salvar o arquivo. Ex: imagens */
  
     $uploaddir = 'imagens/';
  
     $uploadfile = $uploaddir . $_FILES['arquivo']['name'];
  
     if (move_uploaded_file($_FILES['arquivo']['tmp_name'], $uploadfile)){
  
     echo "Arquivo Enviado";}
  
     else {echo "Houve um problema no upload do arquivo.";}
  
?>

</body>

</html>


3º passo: Criando o arquivo .htaccess

Para que seja permitido o envio de arquivos maiores que 12MB (configuração padrão em nossos servidores,) é necessário a criação do arquivo .htaccess para alterar as diretivas do PHP.

Crie um arquivo chamado .htaccess com o seguinte conteúdo:


php_value post_max_size 50M

php_value upload_max_filesize 50M

php_value max_execution_time 90


NOTA: O exemplo acima irá permitir o envio de arquivos com até 50MB e a execução do upload poderá ocorrer em até no máximo 90 segundos.


4º passo: Testando o funcionamento

Envie os arquivos upload.html, envia.php e .htaccess para a raiz do seu site e teste acessando:

http://<seu_domínio>/upload.html


O script irá gravar o arquivo selecionado para upload na mesma pasta que foi definida através do arquivo envia.php.