Ir para conteúdo
Fórum Script Brasil
  • 0

upload de fotos


Léo Muniz

Pergunta

Desculpa aí galera, sei que pra vocês deve ser algo insignificante o que preciso, mas já quebrei muito a cabeça e ainda não consegui o que quero.

Estou iniciando em php. Peguei um script que é ótimo para o que eu quero, só que preciso fazer uma pequena modificação e não consigo, qualquer dica será bem vinda neste estágio da coisa.

Seguinte: tenho três scripts, um que pega a quantidade de fotos a serem enviadas, outro que constrói o formulário para upload, e um terceiro que processa tudo e envia. O que preciso é adicionar (o que sei fazer) mais um campo de texto no primeiro formulário onde o internauta digita seu primeiro nome, para que as fotos venham nomeadas assim: fulano 01, fulano 02. fulano 03...

O que não consigo é fazer com que o segundo script faça isso. Ai vão os três scripts :

form_conta.php

<form action="form_gera.php" method="post">

<b>Envio das fotos</b><br />

Seu primeiro nome:<input type="text" name="nomefoto" size="40"/><br>

Qual a quantidade de imagens do Evento?

<input type="text" name="quantidade" size="5"/><br />

<input type="submit" value="OK"/>

</form>

form_gera.php

<?php

// Obtém quantidade enviada. Perceba que é verificado se foi fornecido um número inteiro,

// caso contrário é usada uma quantidade padrão, 5.

$Quantidade = (isset($_POST['quantidade']) && is_int(intval($_POST['quantidade']))) ? (int)$_POST['quantidade'] : 5;

// Abre formulário de upload

echo '<form action=processa_upload.php" method="POST" enctype="multipart/form-data">';

echo '<b>Envio das fotos</b><br />';

// Imprime os campos para upload, de acordo com a quantidade pedida

for($i = 1; $i <= $Quantidade; ++$i)

{

echo 'foto #' . $i . ': <input type="file" name="Fotos[]" /><br/>';

}

// Fecha formulário

echo '<br /><input type="submit" value="OK"/>';

echo '</form>';

?>

processa_upload.php

<?php

// Pasta de destino das fotos

$Destino = './fotos/';

// Obtém dados do upload

$Fotos = $_FILES['fotos];

// Contagem de fotos enviadas

$Conta = 0;

// Itera sobre as enviadas e processa as validações e upload

for($i = 0; $i < sizeof($Fotos); $i++)

{

// Passa valores da iteração atual

$Nome = $Fotos['name'][$i];

$Tamanho = $Fotos['size'][$i];

$Tipo = $Fotos['type'][$i];

$Tmpname = $Fotos['tmp_name'][$i];

// Verifica se tem arquivo enviado

if($Tamanho > 0 && strlen($Nome) > 1)

{

// Verifica se é uma imagem

if(preg_match('/^image\/(gif|jpeg|jpg|png)$/', $Tipo))

{

// Caminho completo de destino da foto

$Caminho = $Destino . $Nome;

// Tudo OK! Move o upload!

if(move_uploaded_file($Tmpname, $Caminho))

{

echo 'Foto #' . ($i+1) . ' enviada.<br/>';

// Faz contagem de enviada com sucesso

$Conta++;

}

else // Erro no envio

{

// $i+1 porque $i começa em zero

echo 'Não foi possível enviar a foto #' . ($i+1) . '<br/>';

}

}

}

}

if($Conta) // Imagens foram enviadas, ok!

{

echo '<br/>Foi(am) enviada(s) ' . $Conta . ' foto(s).';

}

else // Nenhuma imagem enviada, faz alguma ação

{

echo 'Você não enviou fotos!';

}

?>

Como disse, qualquer dica é válida nesta etapa do processo. Agradeço imensamente qualquer dica....

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,2k
    • Posts
      652k
×
×
  • Criar Novo...