No momento, você está visualizando Galeria de Vídeos Youtube e Vimeo

Galeria de Vídeos Youtube e Vimeo

Galeria de Vídeos Youtube e Vimeo  com miniaturas + Painel Admin + Efeito Fancybox
Olá,

Um amigo do blog escreveu hoje um comentário sobre a necessidade de uma galeria de vídeos do youtube/vimeo e resolvi fazer um pequeno script.

No sistema é possível cadastrar vídeos do Youtube e Vimeo através do código (não link) que é parte do link usado para acessar os vídeos.

Para cadastrar os vídeos basta informar o código dos mesmos, exemplo:

1- Youtube
youtube.com/v=W6tB8Lf7YoU

Onde  W6tB8Lf7YoU é o código do vídeo, no entanto existem outros formatos para o youtube (trata-se de parâmetros adicionais), por exemplo:
youtube.com/v=W6tB8Lf7YoU&related=foobaz
Nestes casos o código termina no & e não deve ser informado nada além do que está entre = e &

2 – Vimeo
vimeo.com/24320919
Esse é o formato padrão do vimeo, geralmente não há nada além do código do vídeo.

Para usar o script basta criar uma única tabela e configurar o arquivo de conexão (dentro da pasta src estão as instruções de configuração);

Mas nem tudo são flores, começando  pelo Youtube, o problema:
– Não tem muita graça exibir somente o link do vídeo, tem que ter a miniatura para incentivar sua exibição
Daí vem  um possível problema, para recuperar as informações do vídeo e obter o caminho da miniatura é preciso fazer uma requisição a API do Youtube e creio haver
um limite de requisições por hora e por IP, ou seja, se você está testando o sistema e dando 100 refresh por segundo talvez os caras reclamem (te dar um chá de cadeira por determinado tempo) mas eu não tenho certeza, é bom dar uma lida nas docs da API.

Eu fiz N testes aqui e tá de boa, além disso, o sistema sendo visitado por centenas de pessoas com IP’s diferentes “não pega nada” o problema somos nós dando refresh para testar e enviando milhares de requisições do mesmo IP.

Bão sobre o Youtube é isso, é bom testar…
O Vimeo (adoro o vimeo, isso sim que é serviço) não tem nenhuma dificuldade, ou não encontrei nenhuma.

A outra coisa é que o painel admin não tem senha hahahahha poxa, isso dá para vocês fazerem de boa, junta um post daqui outro de lá, um teco de script acolá e faz a tela de login.
Eu não tive tempo de fazer tuuuudo!

Importante:  Qualquer linha alterada no main.js pode causar erro no script.

Bom, o link da demo e download é esse aqui

Este post tem 51 comentários

  1. rafael

    muito obrigado meu amigo…. ficou perfeito…. vou utiliza-la e assim que terminar meu projetinho mando o link pra vc dar uma olhada hehehehe…. valew mesmo… to com umas ideias ai… se tudo der certo tb vou comprar algumas coisas suas… kra valew mesmo … seu blog é show.. minha leitura obriatoria.. ah to começando a ver as videos aulas php do prof Neri.. um amigo me emprestou… agora vai heheheh … fui até mais

  2. rafael

    iae Rafael poderia me ajudar?
    Olhe o código http://pastebin.com/hE2p8Q79
    Esta funcionando, só que nas linhas:
    fwrite($ponteiro, “\r\n”);
    fwrite($ponteiro, “\r\n”);
    onde tem a variável, preciso que ela concatenem, vou inserir varias musicas e o player que lê o xml apenas desta forma.

    Se puder ajudar, lembrado que a cada inserção ele lê o banco de dados e gera novamente o xml. … valew mesmo … Ate mais

    1. Rafael Clares

      Rafael, quando você usa um sistema que utiliza um XML gerado do banco você não grava o XML em arquivo, você gera ele em tempo de execução.
      O arquivo deve retornar um XML e não gravar um XML.
      Neste caso você deve concatenar as variaveis e exibir como XML na saida do arquivo.
      Faz assim:
      http://pastebin.com/2g5cqNU2
      Pode salvar ele como configxml_multi.php

      Daí tenta acessar esse arquivo php que gera o XML, veja se a saida é um XML válido, se estiver certo o XML, lá no script que espera um xml você altera o caminho, ex:
      onde está recebendo o configxml_multi.xml você altera para esse arquivo novo, pode ser chamado de configxml_multi.php

  3. rafael

    rafael…esquece o comentario acima…valew

  4. Cláudia

    Você está usando um dominio que já existe, como pode?

    1. Rafael Clares

      Claudia, não entendi seu comentário!

  5. Allan Mtos

    Eu não consigo visualizar quando cadastro não sai na página inicial! Eu até já baixei instalei em localhost e também da o mesmo erro!

    1. Rafael Clares

      Dá erro é? Qual vídeo tentou cadastrar?

    2. Russivan

      Eu não consigo visualizar quando cadastro os Video fica carregando uma barra com bolinhas porem o video e cadastrado do mysql esto usando o locahost para fazer texte

      1. Rafael Clares

        Desculpe pela demora em responder, tem sido corrido aqui.
        Veja se vocẽ tem habilitado no PHP o fopen_url

  6. Marcio M

    Obrigada por entregar tudo pronto, mas eu não sei nem por onde começar com estes arquivos.
    Minha principal dúvida é sobre o banco de dados, quais colunas ele tem que ter

    1. Rafael Clares

      Marcio, sempre que você baixar scripts e na pasta dele houver uma pasta chamada /src quer dizer que há arquivos fontes nela, src ou source, neste caso, as instruções e scripts necessários para instalar e configurar estão na pasta /src. Abs

      1. Marcio

        Oi Rafael muito obrigada pela sua atenção, quebrei um pouco a cabeça, como já deveria ter feito antes, e deu certo! Agradeço novamente por ter disponibilizado tudo pronto! É demais!!

        1. Marcio

          Olá Rafael voltei agora com outra questão: uso páginas mestre e detalhadas do Dreamweaver.

          Então eu pergunto, onde está o recordset do video_index para eu colocar na página que irá chamá-la de acordo com uma ID que eu uso em tudo? A ID já tá tudo ok, acrescentei no BD e no seu formulário.

          Já tentei com o que está na linha 18 a 29 mas não rolou. Tentei também com a linha 26.
          Quando eu crio um conjunto também não funciona, porque tem que ter as coisas que vc tem para exibir o vídeo.

          Por favor onde está este recordset?

          1. Rafael Clares

            Amigo, dreamweaver, até hoje só ouvi dizer, nunca nem abri isso. Não tenho nem ideia do que você está falando.
            Eu uso netbeans e notepad++, programo linhas de códigos apenas, sobre ferramentas de desenvolvimento vou ficar te devendo.
            Veja quais são os campos da tabela pelo mysql e abra o código fonte do script para fazer alterações.

          2. Marcio

            OK Rafael, muito obrigada!

          3. Rafael Clares

            Confesso que depois de 3 comentários seus, estou muito curioso, seu nome é Marcio e você diz “obrigada” é isso mesmo? Desculpe, sei que não tem relação alguma com o assunto mas essas coisas me intrigam demais kkkkkkkkkkkkkkkk

  7. MARCIO kkk

    Vc acertou

    1. Marcio

      Mas o importante é que estou ferrada!
      Eu não entendo nada de PHP e nem de notepad++
      Negócio vai seguir fuçando…
      ObrigadA kkkkkkkkk

  8. Kleyton Miranda

    Me desculpe se eu estiver sendo leigo, mas… como faço o download dessa galeria? cliquei no link mas foi apenas para a “demo” e nao tem botao de download la.. devo usar algum programa para baixar? qual?

    1. Rafael Clares

      Na demo tem um botão de download sim (um botão verde no fim da pagina)

      1. Kleyton Miranda

        ata, muito obrigado e me desculpe, nao vi pq a pagina HOME nao carregava …

    1. Rafael Clares

      O erro está na conexão do mysql. Você deve rever as configurações de banco. Utilize o pastebin para colocar suas configurações (sem a senha) e me passe o link aqui no blog. abs

  9. Lauri Alexndre Pereira

    Olá Rafael Clares
    Cheguei até aqui através do Google procurando como fazer uma galeria de vídeos, vi a ‘demo’ ficou show, baixei o arquivo, descompactei, mas nas instruções tu dizes que para configurar o banco de dados é para alterar o arquivo database.conf.php e para criar as tabelas use o arquivo tables.sql . Se possível gostaria de uma explicação mais detalhada, não sei trabalhar com PHP, mas sou persistente e tento aprender, baixei o programa Pspad para abrir os arquivos php, mas não sei como fazer, estou fazendo um blog wordpress, baixei Easy php para trabalhar localmente antes de hospedar (estou aprendendo através de uma vídeo aula). Então resumindo, criando uma pagina no blog (wordpress) como faço para inserir a galeria de vídeos do Rafael Clares, se for atendido desde já agradeço.

    1. Rafael Clares

      Lauri, não creio que eu consiga explicar melhor do que está no post.
      Você precisa criar o banco de dados no mysql, criar as tabelas contidas no arquivo tables.sql, só isso mesmo.

      Se instalou o easyphp, o caminho para gerenciar os bancos no mysql é:
      http://localhost/home/mysql

      Lá você verá o campo “criar novo banco”
      Crie um novo banco, dê o nome que desejar (será o mesmo nome que deverá informar no database.conf).
      Após criar o banco, clique nele e vá na guia “importar”, selecione o arquivo src/tables.sql e complete a importação.
      Feito isso, você terá o banco que criou e as tabelas necessárias.
      Em seguida, altera o database.conf.php inserindo o nome do banco e os demais dados.
      No geral, no mysql instalado pelo easyphp, o nome de usuário é “root” e a senha não tem, deixe em branco. Boa sorte

    1. Rafael Clares

      Manow, cria um arquivo chamado php.ini com o seguinte conteúdo:
      allow_url_fopen=on

      daí coloca na raiz do site. Boa sorte!

        1. Rafael Clares

          Cleimar, veja se o vídeo está disponível para compartilhamento, as vezes pode estar restrito ao compartilhamento!
          Olhando o site indicado, não consegui ver o erro.
          Abs

  10. Ewerton Caripuna

    Olá caro Rafael,gostaria de usar seu script,porem,estou tendo problemas para achar o botão verde.

    Não achei nada tão sofisticado em relação a videos,sou novato em php e isso me ajudaria muito nos meus estudos!

    Bem,agradeço desde já essa força.Continue a criar scripts em php,que isso ajuda muito a galera nova da área como eu.

  11. Wandersonl leite toledo

    eu gostaria de saber onde edito para poder escolher a quantidade de video a ser mostrado por pagina
    Ex : eu gostaria que mostrasse apenas 9 videos na primeira pagina e o assim por diante
    so que ja olhei todo o script mais nao consegui fazer com que ficasse dessa maneira
    desde ja obrigado pela atençao

    1. Rafael Clares

      Não tem paginação neste script, não é o foco dele. Neste post a ideia principal é capturar as miniaturas dos vídeos.
      Você pode perder uns 5 minutos e fazer uma busca no google por “paginação php”;

  12. adiel

    Cara esse script seu pelo que entendi pra adicionar video precisa colocar só um pedaço da url do youtube eu fiz um script pra um cliente parecido um pouco mais complexo porque vc não usa ( str_replace ) assim a pessoa pode colocar a url inteira que o php vai pegar só a parte que vc quer

    1. Rafael Clares

      Adiel, os códigos disponibilizados aqui não são soluções, são “ideias” para vocês fazerem exatamente o que você fez, melhorar até se tornar útil à você!
      Abs

    1. Rafael Clares

      Giancarlos,
      eu testei aqui e aparecem normalmente no meu servidor, teste:
      http://clareslab.com.br/learn/video/index.php

      Deve ter algo incorreto em seu servidor.
      Faça o seguinte teste:

      – Faça uma cópia do seu arquivo getVimeo.php
      – Copie este código http://pastebin.com/GdcUimRs e substitua o seu getVimeo.php original por este.
      – Acesse http://vieirafilmes.com.br/videos/getVimeo.php (após ter substituído)

      Veja se retorna alguma mensagem na tela. Me avise quando fizer isso.
      abs

      1. Giancarlos R. Vieira

        Bom dia Rafael!

        Pois, então testei novamente e nada. No servidor que você criou funciona numa boa.

        Eu coloquei um video do youtube e funcionou no meu servideor, mas quando eu coloco um video do vimeo não vai, eu fiz o q você me orientou e não deu certo a unica coisa que aconteceu agora é que
        não aparece mais os 0 de erros.
        e na pagina da getVimeo.php não aparece nenhuma informação.

        Poderia ser alguma coisa entre meu servidor de hospedagem ?

      2. Edson Tomaz

        Brother me ajude quando posto videos do youtube não esta aparecendo os videos do aparece do vimeo.

  13. J Junior

    muito util para meu projeto da faculdade. obg pela sua disposição em transmitir esse conhecimento

  14. Carlos

    Bom dia Rafael, tudo bom ?

    Antes de mais nada quero muito parabenizá-lo pelo seu empenho em nos auxiliar com seus posts em neste blog,

    Rafael, fiz o download aqui do código (Galeria de Vídeos Youtube e Vimeo), alterei a conexão do BD, mas acontece que quando executo o aplicativo, aparece a mensagem : file_get_contents() [function.file-get-contents]: URL file-access is disabled in the server configuration in /home/storage/8/54/6f/rvadesignerfotoevide/public_html/video – PHP/getVimeo.php on line 6.

    Exatamente nesta linha do arquivo : getVimeo.php

    $hash = unserialize( file_get_contents( “http://vimeo.com/api/v2/video/$video.php” ) );

    Quando chamo pelo navegador o trecho do codigo : http://vimeo.com/api/v2/video/$video.php

    Aparece a mensagem : We couldn’t find that page.

    Agora quando entro pelo link do seu exemplo, vai normal, incluo o vídeo VÍMEO e o abro normalmente.

    Poderia me dar um Help, por favor

    Te agradeço muito Rafael.

    Atenciosamente,

    Carlos

    1. Rafael Clares

      Então Carlos, a mensagem está dizendo que seu servidor não tem habilitado o fopen_url
      Habilite isso e será resolvido.
      Abraços

      1. Junior Venancio

        Ola Clares, vc tem sempre me tirado muitas duvidas, é a primeira vez que tenho que deixar um recado, pois os comentários dos amigos aqui não conseguiram me ajudar, não gosto mto de atrapalhar, penso que vc ajuda muito já postando as matérias.

        mas gostaria muito da sua ajuda, resolvi responder aqui, pois se refere ao mesmo erro, fiz o que vc mandou ai, e na vdd no php.ini é o allow_url_fopen=On , já estava desta maneira, e uma matéria do locaweb pediu pra deixa on, a opção abaixo dele tbm.

        porém, não funcionou, continua rodando as bolinhas e nada resolve.

        isso no meu servidor local.
        será que tem mais alguma coisa que eu preciso mexer?

        obrigado desde já pela atenção

  15. Claudio Souza

    Bom dia Rafael Clares, utilizei esta galeria de vídeo, que por sinal muito bacana e de simples utilização, no entanto, com a nova atualização do youtube as miniaturas pararam de funcionar. Não tenho conhecimento suficiente para solucionar o problema, gostaria de saber se você pretende fazer alguma atualização do script que seja capaz de adequar às novas diretrizes do youtube .

    Atenciosamente,

    Claudio Souza.

  16. Leonardo

    não insira video do youtube so do outro site pq?

Deixe um comentário