Você está aqui: PHP ::: Dicas & Truques ::: Upload de Arquivos |
Como fazer upload de múltiplos arquivos usando PHPQuantidade de visualizações: 12538 vezes |
Nesta dica mostrarei como você pode escrever um script PHP para o upload de múltiplos arquivos de uma só vez. Comece analisando o seguinte formulário:<html> <head> <title>Upload de arquivos usando PHP</title> </head> <body> <form action="testes.php" method="post" enctype="multipart/form-data"> Arquivo 1: <input type="file" name="arquivo[]"><br> Arquivo 2: <input type="file" name="arquivo[]"><br> Arquivo 3: <input type="file" name="arquivo[]"><br> <input type="submit" name="submit" value="Enviar"> </form> </body> </html> Aqui nós temos três controles <input type="file">. Poderia ser muito mais, não há restrição. Note que o nome dos três controles é o mesmo, ou seja, "arquivo[]". Veja agora o código para o documento testes.php, responsável por receber os arquivos enviados: <? // diretório no qual o arquivo será gravado. este diretório // deverá ter permissão de escrita $diretorio = "/home/xxx/xxxx/xxx/imagens/"; // obtém a quantidade de arquivos enviados $quant = count($_FILES['arquivo']['name']); // vamos percorrer os arquivos enviados e processá-los // individualmente for($i = 0; $i < $quant; $i++){ // vamos verificar o código do erro if($_FILES['arquivo']['error'][$i] == UPLOAD_ERR_OK){ // o arquivo foi transferido com sucesso. vamos movê-lo // para seu local definitivo move_uploaded_file($_FILES["arquivo"]["tmp_name"][$i], $diretorio . $_FILES["arquivo"]["name"][$i]); echo "Upload do arquivo " . $_FILES["arquivo"]["name"][$i] . " feito com sucesso<br>"; } else echo "Erro no upload" . $_FILES["arquivo"]["name"][$i] . "<br>"; } ?> O truque aqui é tratar o array $_FILES como um array de duas dimensões e usar um laço for para percorrer os arquivos enviados. |
![]() |
Desafios, Exercícios e Algoritmos Resolvidos de PHP |
Veja mais Dicas e truques de PHP |
Dicas e truques de outras linguagens |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
1º lugar: Java |