| Maior acervo de vídeo aulas da web

Não consegue visualizar a vídeo aula?

Desenvolvendo um sistema de uploads

Olá, meu nome é David CHC, sou administrador do fórum do mxmasters e vou começar a enviar vídeo aulas sobre php e também sobre CSS. Nessa primeira video aula, vamos aprender como enviar múltiplos arquivos com php dinamicamente. Iremos criar uma função em javascript para adicionar campos inputs e também fazer com que o php envie esses arquivos.

Espero que gostem da video aula, e que possa ser útil o que foi ensinado, aos poucos eu irei melhorar, mas pra isso preciso que vocês comentem (estou parecendo politico pedido voto, rs), o que querem ver em alguma video aula, o que acharam da video aula. Até uma próxima, e boa video aula.

Você gostou dessa Vídeo Aula, então compartilhe com seus amigos

Artigos Relacionados

Comentários

  • webson

    diz ai prof: qnt tempo elvar pra ficar bom em php assim? tem hora que me trava tanto codigo, vc ensina com uma naturalidade, parabens se eu tive-se seguido o conselho da minha mãe qnd ela dizia estuda menino, agora talve já era bom nisso,rsrsr… falo amigão vc é o maximo continue nos ajudadando

    • http://www.videoaulasbrasil.com.br David CHC

      @webson, isso vai depender muito de pessoa pra pessoa. Mas é normal dá errado quando estamos aprendendo, ou mesmo não saber como funciona. Mas única maneira de aprender é fazendo, pesquisando, tentando reproduzir as videos aulas,tentando fazer algo diferente com o mesmo código, procurar alternativas. E com isso vc vai aprendendo aos poucos. Delimitar tempo é algo dificil mesmo de dizer. Mas continue assistindo as video aulas, se errar, repita quantas vezes forem necessário, q da aqui a pouco vc conseguirá aprender mais rápido, e aplicar a suas necessidades.

  • webson

    DAVIDE ONDE ESTA A VIDEO AULA MULTIPLOS UPELOD???? ME PASSA O LONK POR FAVOR… OBRIGADO PROF.

    • http://www.videoaulasbrasil.com.br David CHC

      @webson, vc não tá conseguindo visualizar? Se não consegue, tente limpar o cache do navegador.

  • webson

    david, já tente de td mais não consigo fazer. a imagem não vai para a pasta , coloquei como esta no forum, da uma luz. falo

  • emanuel

    oi david, uma dúvida, Você usou mysql? para onde foram as imagens? quando você clicou em enviar?

    • http://www.videoaulasbrasil.com.br David CHC

      @emanuel, não foi usada o mysql, as imagens vão para uma pasta

  • emanuel

    beleza, você disse que vão para uma pasta, mais como faço para mandar as imagens para esta pasta? e onde devo criar está pasta para as imagens. c:/ aqruivos de programas, easyphp, www?

  • emanuel

    David… olha Queria saber uma coisa, eu faço um site php e mysql, eu quando vou hospedar, mando tudo para minha Host, tudo até a pasta do banco de dados, só que quando vou visualizar dá erro na página conexão e index, tem como dizer ensinar, como se Hospedar o mysql feito no easy php? tem que ter um plano de hospedagem linux, ou o windows serve? tem que ter suporte a mysql?

    • http://www.videoaulasbrasil.com.br David CHC

      @emanuel, na video aula os arquivos são enviados para mesma pasta onde está o arquivo, caso queira q os arquivos vão para uma pasta definida, usar o a variavel $pasta, exemplo:

      $pasta = ‘upload/’;

      Sobre a hospedagem, se vc tiver trabalhando como PHP, é aconselhavel sua hospedagem ser linux, não q a hospedagem windows não dê suporte, muitas vezes dá, mas é melhor o linux pra trabalhar com php.
      Se vc usa banco de dados no servidor local (easy php), vc terá q criar o banco de dados na sua hospedagem tbm, e tbm o usuario e a senha. Depois de criar vc pode exportar as tabelas do servidor local para a hospedagem. Vc pode procurar o youtube sobre banco de dados cpanel, ou exportar tabela no cpanel, q vc verá varias video aulas sobre o assunto q irão te ajudar.

  • Emanuel

    Obrigado David, Me ajudou muito, valeu…

  • http://www.2clique.net/andre andre

    como faço para que o upload poça ser armazenado em diretorios diferentes???

  • Marildo

    Parabéns!!! muito boa a aula…

  • http://www.jampamix.com Jomarkys Soares

    David, eu gostei da aula! Mais o bom eh mostrar depois como puxar as imagens q foram dadas o upload em outra página, e fazer isso tudo com BD! Fazer tipo um album de imagens dinâmico, já q esse script tbm de adcionar campo se torna muito útil nesse tipo de trabalho!

    Espero essa vídeo aula, vlw…

    • http://www.videoaulasbrasil.com.br David CHC

      @Jomarkys, como existia já uma video aula com upload e com cadastro do banco de dados, por isso eu não fiz usando BD. Mas o importante é entender a lógica do upload. E para mostrar os dados, tem outra vídeo aula minha onde ensino a puxar as imagens de uma pasta, a aula é : Listando imagens de uma pasta com PHP.

  • Arisvan

    Só tenho q agradecer, essa excelente video aula, espero q post mais coisas com otimos assuntos como esse…

    Abs

  • http://www.geracaoforte.com Derick

    E ae… muito boa a VA… mas estou querendo uma ajuda…
    Estou querendo saber como fazer para por a url da imagem após o upload…
    se puder me ajudar… agradeço…
    Muito obrigado!!!

    • http://www.videoaulasbrasil.com.br David CHC

      @Derick, crie um array, e guarde os nomes das imagem q fizeram upload no array, e depois só percorrer com foreach e dizer acrescentando a url+nome da imagem

  • http://www.robsonwebdesigner.com.br Robson Rafael

    Boa noite,

    Tinha como você através desta VA mostrar como se faz a validação da imagens enviadas, tipo:

    O tamanho, formato, se já existe vai e acrescenta um número na frente, mais ou menos isso.

    Desde já agradeço!

    • http://www.videoaulasbrasil.com.br David CHC

      @Robson Rafael, vc pode fazer, basta usar do array file:

      $_FILES['nome']['name'] => Nome do arquivo
      $_FILES['nome']['tmp_name'] => Nome temporario do arquivo no servidor
      $_FILES['nome']['size'] => Tamanho do arquivo em bytes
      $_FILES['nome']['type'] => Tipo do arquivo, no caso o mime-type

      Sabendo dessas informações, vc consegue fazer uma verificação se passar na validação da aplicação do seu sistema. Eu pra não repetir o nome, vc pode gerar um nome unico:


      //resgata nome da imagem do array
      $nome = $img['name'][$i];

      //resgata a extensao da imagem
      $extensao = end(explode(“.”, $nome));

      //Gerar um nome nome colocando a extensão.
      $novoNome = md5(uniqid(time().$nome)).”.”.$extensao;

  • gabrio

    Olá, gostaria de uma video aula ensinando a montar uma galeria de videos dinamica, ninguem ensina isso!!!

  • Eder Gasparassi

    Olá David. Como sempre uma excelente vídeo aula. Talvez você poderia me dá uma dica sobre um problema: Com a ajuda de sua vídeo aula, desenvolvi um sistema de multiplos upload para pastas diferentes do jeito que você ensinou mas com uma diferença: Eu acrescentei o campo “legenda” para cada foto extra também e esse campo está como array. Minha pergunta é: Como faço para recuperar esses dados vindo do form e inseri-los no BD? Como estão em como array eu não sei como fazer isso.
    Desde já agradeço a ajuda.
    Abraço.

    • http://www.videoaulasbrasil.com.br David CHC

      @Eder Gasparassi, vc pode trabalhar com array sem problema, vc só vai inserir no hora de fazer o upload, exemplo:

      FORMULÁRIO:

      input type=”file” name=”foto[]”
      input type=”text” name=”legend[]”

      //No PHP

      //Resgata os valores
      $imagem = $_FILES['foto'];
      $legenda = $_POST['legenda'];

      //veja o total vindo de imagens vindo formulário
      $contar = count($imagem['name']);

      //faz um loop com essa contagem
      for($i = 0; $i > $contar; $i++){
      //Pega o nome da imagem e a legenda do array
      $nomeImagem = $imagem['name'][$i];
      $nomeLegenda = $legenda[$i];

      //faz o UPload

      //depois inseri no banco de dados dos dados.
      mysql_query( “INSERT INTO imagens (foto, legenda) VALUES (‘$nomeImagem’, ‘ $nomeLegenda’));

      }

  • Eder Gasparassi

    Muito obrigado David! Estava faltando o “$nomeLegenda = $legenda[$i];”
    Talvez você possa me tirar mais uma dúvida: Como faço para no mesmo form criar uma list box para selecionar as pastas para onde eu queira incluir novas imagens caso eu não queira criar uma nova pasta para upload dessas mesmas imagens?
    Desde já agradeço a ajuda.

    • http://www.videoaulasbrasil.com.br David CHC

      @Eder, nesse caso vc terá q definir isso no seu select, e enviar esse valor pelo form:

      select name=”pasta”
      option value=”fotos”| fotos | option
      option value=”paisagem”| Paisagem| option
      option value=”retrato”| Retrato | option

      No caso, vc recupera esse valor,

      $pasta = $_POST['pasta'];

      Se for dessa maneira, recomendo gravar o nome da pasta tbm junto com imagem.

  • Rony

    help!!!!!!!
    o sistema funciona td certo quando ta no meu pc, usando o wamp server..

    masss, quando coloco ele no host da o seguinte erro:

    Warning: move_uploaded_file(400_F_3406475_xFdIakPiMfpzH56G4DWx7mak3YVn6G.jpg) [function.move-uploaded-file]: failed to open stream: Permission denied in /home/odescco/public_html/yesbras/sis_exercicio/upload/upload.php on line 12

    Warning: move_uploaded_file() [function.move-uploaded-file]: Unable to move ‘/tmp/phpHvBp2b’ to ’400_F_3406475_xFdIakPiMfpzH56G4DWx7mak3YVn6G.jpg’ in /home/odescco/public_html/yesbras/sis_exercicio/upload/upload.php on line 12

    ja tentei consertar mais nao consegui, nem sei mais oq faze =/
    ajuda pf !
    flw

    • http://www.videoaulasbrasil.com.br David CHC

      @Rony, vc tem q dá permissão de escrita na pasta onde irão essas imagens, no caso a pasta upload. Vá no seu programa de FTP, vá até essa pasta, clique com botão direito, e vá até em propriedade ( na maioria do programas de FTP seria assim), e na opção de permissão de pasta, coloque 0755, caso ainda assim dê problema, coloque 0777

  • Rony

    fiz isso, msm assim o erro continua =/

    • http://www.videoaulasbrasil.com.br David CHC

      @Rony, o erro é de permissão de escrita na pasta, o q pode tá ocorrendo, já ocorreu comigo, é q vc tem q dá permissão pela hospedagem, em vez do programa FTP. Para isso vc terá q entrar no painel da sua hospedagem, em algo relacionado a gerenciador de arquivos, e dá permissão por lá. Em algumas hospedagem, não sei explicar o porquê, as vezes isso ocorre, vc dá permissão de escrita em uma pasta pelo FTP, mas mesmo assim só indo pela hospedagem para dá permissão.

  • Rony

    deu certo..
    dei a permissão pelo gerenciador d arquivos!!!
    brigadão ai !!
    flw

  • Rony

    david, por exemplo, se kisesse que ao inserir 1 IMAGEM COM O MSM NOME NA PASTA, ele desse uma mensagem assim.
    Essa imagem ja existe.

    como fasso?

    • http://www.videoaulasbrasil.com.br David CHC

      @Rony, basta verifica se a imagem existe, usando file_exists()


      $pasta = ‘imagens’;
      $imagem = $_FILES['imagens'];

      if(file_exists($pasta.’/’.$imagem['name'])){
      echo ‘Essa imagem existe’;
      }

  • mauro

    fala ai David
    vou te mandar este comentario mas nao sei se vc vai ver pois ja faz tempo que esta video aula foi postada, mas la vai.

    primeiramente parabens pela aula esta ajudando muita gente.

    outra coisa , como que eu poderia enviar as imagens usando apenas um campo tipo orkut?

    ce tiver um tempinha da uma ajuda ai, valew.

  • mauro

    opa foi mal, vou explicar hahahahha,

    enviar varias imagens usando apenas um campo tipo multi uploads

    + 1 vez valew hahah

    • http://www.videoaulasbrasil.com.br David CHC

      lLá @mauro, vc pode fazer utilizando uploadify ( http://www.uploadify.com/ ), q é bem tranquilo de implementar

  • mauro mattos

    Fala ai professor !

    Vou te incomodar novamente, mas antes vou ter que te dar mais uns parabens pois as suas video aulas sao as melhores aulas do site VAB e do site MXMASTERS parabens.

    Agora se não for muito encomodo eu tenho uma duvida pois vc me passou o site uploadify.com, o site é muito bom ja enplementei o upload e ta tudo serto, mas eu queria saber como que salvo o nome da foto no banco ja tentei de varios modos e nada, quando você tiver um tempinho e puder da uma força ai.

    Valew abraço.

    • http://www.videoaulasbrasil.com.br David CHC

      @Mauro, no caso a inserção no banco de dados, será no mesmo arquivo onde se realizará o upload. Se vc seguir a mesma estrutura sugerida pelo uploadify, lembre-se q esse arquivo q faz upload, está dentro de uma pasta, logo na hora de chamar arquivo de conexão, tem subi um nivel (../)

  • mauro mattos

    Fala ai professor !

    Olha eu aqui novamente, rsrsrs
    desta vez vim apenas para falar que a mente humana é uma coisa engraçada e que se não tevesse pessoas como você para clarear as nossas ideias o que seria de nos.
    Ja faz 2 dias que tento colocar estas fotos no banco e nada, mas agora isso é coisa do passado pois com sua ajuda as fotos foram todas VALEW abraço.

    • http://www.videoaulasbrasil.com.br David CHC

      @mauro , as vezes isso acontece, não conseguimos enxegar outras soluções, pq estamos muito focados em determinado problema. O importante q vc conseguiu resolver, rs

  • Marcos Amaral

    Olá David, Parabéns pelo video muito bom!Queria tirar uma dúvida. É possível antes de fazer upload,tipo, quando eu selecionar o arquivo clicar em ok e ele antes de fazer o upload automaticamente, ele entrar em alguma função para fazer algumas verificações?Ex. ver o tamanho do arquivo, ou tipo…isso antes de carregar aquela barra de tempo.

    Abraços Marcos Amaral

    • http://www.videoaulasbrasil.com.br David CHC

      @Marcos , sim, vc pode fazer essa verificações antes do upload, exemplo:

      http://pastebin.com/RujUzAKq

      O script q mostrei tá um pouco diferente, pq essa aula já tem um tempo, eu não me lembro perfeitamente do script completo.

  • Marcos Amaral

    mas ai é que ta o problema, pra ele entrar nesse script, de qualquer forma, quando eu seleciono o arquivo e clico em ok, ele já manda o script carregando a barra de porcentagem e tudo. Mas por ex. Eu tenho um arquivo de vídeo de 20MB e quero saber a duração do vídeo, do jeito que estou fazendo ele primeiro carrega o vídeo, e depois me retorna alguma mensagem, eu quero fazer o contrario, eu quero primeiro saber a duração do video e depois carregar. tem como?

    • http://www.videoaulasbrasil.com.br David CHC

      @Marcos, creio q não tem como fazer dessa maneira.

  • Marcos Amaral

    Blz. Valeu David

    Obrigado pelas informações

  • thiago

    mto obrigado David,,
    ajudou bastante.

  • http://thiagoinfo.net Thiago Henrique

    Bom dia David !
    se eu quiser fazer upload de arquivos em pdf é só muda a extensão ? só que esses arquivos em PDF vão está compactado…

    • http://www.videoaulasbrasil.com.br David CHC

      @Thiago Henrique, vc pode enviar qualquer arquivo utilizando o move_uploaded_file, sem problema algum. É interessante vc verificar q tipo de arquivo, no caso vc pode usar o mime-type, exemplo no caso do PDF:

      $file = $_FILES['file']
      $permitido = array(‘application/pdf’, ‘application/x-pdf’, ‘application/acrobat’, ‘applications/vnd.pdf’, ‘text/pdf’, ‘text/x-pdf’);
      if(in_array($file['type'], $permitido)){

      }

  • Clecio Espindola

    Olá, David!
    Sei que o post é um pouco antigo, mas foi muito bem explicado e gostei pacas da sua video-aula, porém acabei ficando com um erro no momento em que testo o arquivo no navegador.
    Ele mostra os input’s e logo em seguida o código ‘; echo ‘Arquivos não enviados :’.$erro; } ?>

    Porque isso acontece, já vasculhei o codigo e está igualzinho ao da video-aula. Abs

    • http://www.videoaulasbrasil.com.br David CHC

      @Clecio , vc tem instalado o apache, php, e MySQL ?

  • Clecio Espindola

    Não… desculpe mais uma vez a ignorância, como faço para instalar.
    Baixo direto o WAMP5 ou Apache Server for Windows? Qual você recomenda.

    • http://www.videoaulasbrasil.com.br David CHC

      @Clecio, baixe o WAMPServer e depois é só instalar.

  • Clecio Espindola

    Perfeito! Muito obrigado, instalarei e caso tenha algum problema vou te “aborrecer” (rs) de novo.
    Muito obrigado

    • http://www.videoaulasbrasil.com.br David CHC

      @Clecio , pode perguntar a vontade, sem problema algum. abrs

  • estrela

    Olá! Eu fiz um codigo para upload que funciona muito bem no windows mas não consigo fazer q funcione no linux, qual será o problema??

    • http://davidchc.wordpress.com David CHC

      Provavelmente seria permissão na pasta onde vc tá fazendo upload. Vc precisa colocar uma permissão 0777


Hospedado por Hostnet - Hospedagem de sites

VAB - Todos os direitos reservados - 2008 / 2012

Developed by: MX Web Studio

Mais em PHP (196 of 199 articles)