Igor FV 0 Denunciar post Postado Setembro 18, 2006 Boa tarde amigos, Estou lançando um "DESAFIO" para voçes!!! O "desafio" é referente a um artigo que li com o titulo "Formulários e upload de múltiplos arquivos e fotos " no site Linha de Código, a url é: http://www.linhadecodigo.com.br/artigos.as...c=970&pag=1. Existe a possibilidade gravar o nome de cada imagem junto com a extensão no MySql?, tipo cada nome com a extensão ficaria nos campos respectivos no bd MYSQL. Tentei fazer, mas não consegui... Tipo teria que ser criado os campos na tabela automaticamente, quando fosse gerado o formulario com os campos para upload... foi ai que nao consegui.... Existe a possibilidade de fazer isso? Estava pensando em limitar a quantidade de campos para upload.... tipo o usuario so pode gerar um form com no maximo de 20 campos para upload (20 imagens)... e ai eu criaria 20 campos no MYSQL (imagem1, imagem2, imagem3, ..., imagem20).... porém não sei como criar query para inserir os nomes das imagens em cada campo respectivamente. Teria como vcs me ajudar amigo? PAGINA FORM_CONTA.PHP (Pagina onde o usuario digita o numero de imagens que sera feito o upload para um diretorio definido). <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /><title>Untitled Document</title></head><body><form action="form_gera.php" method="post"><b>Envio das fotos</b><br />Qual a quantidade de imagens do Evento?<br /><br /><input type="text" name="quantidade" size="5"/><br /><input type="submit" value="OK"/></form></body></html> PAGINA PROCESSA_FORM.PHP (Pagina que vai gerar os campos para fazer os uploads das fotos ou imagens). <?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>'; ?> PAGINA PROCESSA_UPLOAD.PHP (Pagina que envia as fotos para o diretorio especificado no codigo) <?php // Pasta de destino das fotos $Destino = 'upload/image_proc/'; // 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!'; }?> Vlw.. amigos... a aguardo sugestoes.... Compartilhar este post Link para o post Compartilhar em outros sites
jcfalcone 0 Denunciar post Postado Setembro 18, 2006 você não precisa limita só que no db invez de você coloca tipo 1 em cada campovocê coloca em colunacada campo seria 1 insert novo Compartilhar este post Link para o post Compartilhar em outros sites
Igor FV 0 Denunciar post Postado Setembro 18, 2006 Amigo, teria como você postar o codigo modificado como ficaria?Vlw.. Compartilhar este post Link para o post Compartilhar em outros sites