Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Ricardo SilSan

Galeria de fotos com sistema de albuns

Recommended Posts

Ola pessoal do fórum. Preciso muito de uma ajuda num código

To montando um site e preciso colocar nele uma galeria de fotos com albuns até achei alguns scripts, mas nenhum se encaixou no que a pessoa que me pediu o site queris.

 

Vou explicar aqui +- como é a ideia da galeria.

 

Ao clicar no botão do menu que direciona para a página de fotos, seria carregado uma página com todos os álbuns, cada álbum com uma miniatura de uma das fotos que estão na pasta.

 

Algo parecido com essa imagem:

 

pagalbum.png

 

Nessa imagem, cada quadradinho vermelho seria um album, com miniatura de alguma das fotos dentro do album.

 

Depois de clicar em um dos albuns, uma outra pagina é carregada, mostrando uma imagem grande ao lado, e uma lista na lateral esquerda com as miniaturas das fotos do album. Ao clicar na miniatura da lista, a foto é exibida no espaço maior.

 

Como nesta imagem.

 

pagfotos.png

 

 

O esquema é +- esse, até da pra fazer isso em html, criando os links de um por um, pagina por página, uma pra cada imagem. So que a pessoa que me pediu o site pretende colocar nesse álbum + de 200 fotos. Imagina criar links miniaturas e paginas para cada imagem. Alem de muito espaço no servidor seria algo bastante demorado.

 

Sei que tem scripts que pegam as imagens de uma pasta automaticamente e colocam elas para exibição na página sem precisar linkar cada uma manualmente.

 

Se alguém tiver um sistema parecido com isso, códigos ou algo que possam me indicar, agradeço d+++++++++ mesmo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom... Se você não tiver noção de php e mysql será bem complicado. Se quiser troca uma idéia sobre o trabalho me adicione no msn: allexcarvalho@outlook.com

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom... Se você não tiver noção de php e mysql será bem complicado. Se quiser troca uma idéia sobre o trabalho me adicione no msn: allexcarvalho@outlook.com

 

Verdade.. Para criar um sistema assim e que encaixe nos planos do cliente só fazendo mesmo. Mas talves tenha alguma solução ai.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Poisé, to iniciando no php ainda, sei pouca coisa e sei que é meio complicado assim rsrs. Mas to aprendendo rsrs.

 

A parte da primeira imagem, para exibir os álbuns, até da pra fazer de um por um, pq não serão tantos assim. Mas agora a segunda página, da figura 2, confesso que não sei fazer rsrs.

 

Pra essa página pensei talvez em algo +- assim:

 

Eu criaria uma pasta, nessa pasta colocaria as imagens do álbum. faria uma página com um código ou script que listaria as imagens uma abaixo da outra e do lado seria colocado um espaço talvez com um iframe, include ou algo do tipo que chamaria a imagem da miniatura clicada.

 

Acho que o esquema seria +- esse, só não sei fazer kk. Mas se achar um sistema parecido poderia tentar adaptar no estilo que preciso.

 

Oq acham? Falei besteira, ou to no caminho? kkk

 

Valeu pela ajuda.

 

Bom... Se você não tiver noção de php e mysql será bem complicado. Se quiser troca uma idéia sobre o trabalho me adicione no msn: allexcarvalho@outlook.com

 

Obrigado, vou te adicionar aqui.

 

Meu navegador está louco, repetiu o envio do post 3 vezes kkk.

Ai pra não ficar aquela coisa repetida editei aqui kkkk.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você tem que fazer um script para fazer o upload e cadastro em banco das imagens. Feito isso terá que resgatar esses valores.

 

Deixa eu ver se entendi então.

 

Vou criar por exemplo upload.php nessa pagina coloco um script que vai fazer o up das fotos e registra elas no banco de dados.

Criou outra página exibe.php com outro script que vai buscar as informações no banco de dados sobre as fotos e exibir as imagens nos espaços da página que seira o das miniaturas e o da foto grande.

 

É mais ou menos isso?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Se eu fosse fazer faria algo assim:

 

 

1: Criaria um bando de dados para gerenciar isso. db_galeria.

2: Criaria uma tabela para salvar os caminhos das imagens: id_img, nome_img, data_img

3: Criaria uma tabela com tags no qual essas imagens podem está relacionadas tipo:

[imagens de praia] tags >>[Lugares, dia, praia] Isso server para criar um filtro inteligente de imagens

4:criaria uma classe que iria gerenciar o up load da imagem.

5:criaria uma classe que conectaria ao banco de dados

6:criaria uma classe para gerenciar a exibição das imagens

7:Criaria ima classe que gerenciaria a páginação.

8:Criaria uma classe que gerenciria a pesquisa por tags ou que saberia quais tags a imagens vizualizada têm

9: Usaria o Smarty para configurar o templete do sistema.

10: Depois começaria a usar as classes

11: Coisas a mais certamente viriam.

 

Isso é por onde eu começaria.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bem, eu passei por algo parecido. Utilizei um plugin Jquery chamado Pretty Photo que ao clicar em um link ele abre usando AJAX a imagem do link de forma MODAL.

 

O PHP eu resolvi listando todas as imagens da pasta das fotos separado em Thumbnails(miniaturas) e Fullscreen(fotos a ser visualizada). No caso teria uma pasta chamada carnaval e dentro teria duas pastas, thumbnails e fullscreen. A exibição é em ordem alfabética, por isso a ordem como aparece na pasta será a ordem que aparecerá no site.

 

   function listarImagens($nomeEvento, $anoEvento, $dirEvento, $desc) {

       // Montando diretório das Imagens pequenas, Thumbnails, e das imagens grandes, fullscreen
       $dirThumbnails = "./conteudo/fotos/" . $anoEvento . "/" . $dirEvento . "/" . "thumbnails/";
       $dirFullscreen = "./conteudo/fotos/" . $anoEvento . "/" . $dirEvento . "/" . "fullscreen/";

       // Verificar se ambas as pastas, tanto do Thumbnails como fulscreen existem
       if (is_dir($dirThumbnails) && is_dir($dirFullscreen)) {

           //Abrir o diretório
           $openDir = opendir($dirFullscreen);

           // Iniciar a montagem de uma lista
           $return = '<div id="galleryPhoto">';
           $return .= '<fieldset><legend>' . $nomeEvento . " - " . $anoEvento . '</legend>';
           if ($desc !== "" && $desc !== NULL) {
               $return .= '<fieldset style="background: #ffa;">';
               $return .= '<p style="font-size: 16px; font-weight: bold; color: #33a">' . $desc . '</p>';
               $return .= '</fieldset><br />';
           }
           $return .= '<ul class="gallery clearfix">';

           // Criar um array com os nomes dos arquivos do diretório enquanto houver arquivo a ser lido
           while ($nome_itens = readdir($openDir)) {
               $img[] = $nome_itens;
           }

           // Organizar o array
           sort($img);

           // Montar um item de lista para cada linha do Array
           foreach ($img as $listImg) {
               if ($listImg !== "." && $listImg !== ".." && $listImg !== "index.html") {
                   $listImgFull = $listImg;
                   $listImgThumb = "thumbnails_" . $listImg;
                   $return .= '<li><a href="' . $dirFullscreen . $listImgFull . '" rel="prettyPhoto[gallery1]"><img src="' . $dirThumbnails . $listImgThumb . '" /></a></li>';
               }
           }
           // Fechar a Lista
           $return .= "</ul></fieldset></div>";
       } else {
           //Exibe caso uma pasta não exista com o nome especificado
           $return = '<h1 style="text-align: center;">Diretorio não encontrado</h1>';
       }

       return $return;
   }

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.