Ir para conteúdo

POWERED BY:

Arquivado

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

JeanCFL

[Resolvido] Exibir Thumbnails

Recommended Posts

Olá.

 

Tenho um sistema de upload que manda as fotos para uma pasta cujo nome é o id do registro no mysql e ele também gera thumbnails.

 

Exemplo:

 

Caminho das imagens reais: fotos/id-13/

Caminho das thumbnails: fotos/id13/thumbnails/

 

Preciso de um script que exiba as thumbnails da pasta na pagina, e que ao clicar na thumbnails ele exiba a imagem grande.

 

---------------------------------------

 

O que tenho até então, exibi a imagem original mais em tamanho pequeno e quando clica exibi ela grande, porém isto faz o carregamento ficar muito lento:

 

<?php 
$folder = $imovel_id;
error_reporting(E_ALL ^ E_WARNING ^ E_NOTICE);
foreach (glob("../images/photos/realstate/$folder/*.*") as $filename)
{
echo ("<a href='$filename' rel='zoom' target='_blank'><img src='$filename' style='max-width:100px; height:80px; overflow:hidden'></a>"); 
} 
if (empty($filename)) { 
echo"Nenhuma foto adicional foi encontrada!";}
?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pegue uma classe de tratamento de imagem e processe elas em tempo de execução eu uso a http://www.daviferreira.com/blog/post/8/manipulando-e-redimensionando-imagens-com-php.html

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara, a questão não é tratar a imagem, pois tem a thumbnail e a imagem normal, eu só não sei como exibir a thumbnail e ao clikar nela exibir a imagem grande.

Compartilhar este post


Link para o post
Compartilhar em outros sites

<a href='caminho_da_minha_imagem_grande/img_grand.jpg'><img src='minha_miniatura.jpg'></a>

 

Só isso

At+

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara deste modo não da certo pois estou usando o forearch para exibir as imagens.

 

Tentei criar dois forearch mais não deu certo, pois as imagens não ficaram sincronizadas a thumbnail era uma e quando clicava abria outra.

 

Acho que eu criei de forma errada.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Acho entendi, você está listando direto da pasta correto?

 

Se sim, o melhor caminho para você seria colocar o mesmo nome para ambas as imagens e chamar a miniatura para exibição passando a pasta da imagem real para ser ampliada.

 

Ex:

 

  $mini = "casa.jpg"; // supondo que esta imagem seja o thumbnail e está em /thumbnail/casa.jpg e irá chamar a imagem principal que está em /fotos/casa.jpg

  echo "<a href='thumbnail/$mini'><img src='fotos/$mini'></a>";

 

Pelo que entendi é isso que precisa

 

at+

Compartilhar este post


Link para o post
Compartilhar em outros sites

O problema é que eu estou usando o multiplo upload da developer tolbox, dai ele cria as thumbnails com o mesmo nome só que adiciona 150x100.jpg, exemplo: nomedafoto_150x100.jpg

 

E o $filename ali que o forearch gera é o caminho inteiro. no caso resultaria: "../images/photos/realstate/diretorio-das-fotos/as fotos estão aqui" e das thumbnails: "../images/photos/realstate/diretorio-das-fotos/thumbnails/as fotos estão aqui"

Compartilhar este post


Link para o post
Compartilhar em outros sites

Acho que pode te ajudar:

 

Faça com que o seu forearch liste apenas os thumbnails que te retornará algo assim:

$filename = "../images/photos/realstate/diretorio-das-fotos/thumbnails/nomedafoto_150x100.jpg";

 

Com esse resultado você fará o seguinte:

  $nome = end(explode("/",$filename)); // resultado: "nomedafoto_150x100.jpg"

  $sofoto = substr($nome, 0, -12)."jpg"; // te resultará "nomedafoto.jpg"

  echo "<a href='../images/photos/realstate/diretorio-das-fotos/$sofoto'><img src='$filename'></a>";

 

Não é uma solução muito aplicável mas acho que te ajuda.

 

At+

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara,

 

Não teria como mecher nesta função substr para não precisar ali usar a extensão.

 

Fazer com que em uma imagem "DSC_13_120x80.JPG" ela corte só o "_120x80" e mantenha o nome do arquivo e a extensão. pois o metodo de cima funcionou porém limita-se a imgens jpg.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Amigo, o tópico já estava como resolvido, mas vamos lá:

 

$nome = end(explode("/",$filename)); // resultado: "nomedafoto_150x100.jpg" 

$sofoto = str_replace("_120x80","",$nome);

echo "<a href='../images/photos/realstate/diretorio-das-fotos/$sofoto'><img src='$filename'></a>";

 

at+

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.