Quantcast
Channel: Tópicos
Viewing all articles
Browse latest Browse all 14700

Galeria de Imagem em arquivo PHP

$
0
0

Olá achei um código de galeria de imagens em um único arquivo PHP em http://www.toprated.com.br/galeria-de-fotos-super-simples-usando-apenas-1-arquivo-php/


Baixei o exemplo e fiz o teste, realmente é perfeito. O código possui variáveis que lê a pasta e o endereço (url) do arquivo. Mas neste exemplo, torna a galeria fixa. Gostaria de passar o endereço da pasta com as fotos via variável no PHP. Aí o código funciona em partes, ele gera os thumbs, mas quanto clico na miniatura, ele gera a visualização vazia. O que deve estar errado? segue os links para teste:


Galeria c/ valor de variavel fixa ( $pasta_fotos = "06513050"; ) - Funcionando OK


http://fernandoinformatica.com/pilastro/galeria/galeria.php


Galeria c/ valor de variavel dinamica ( $pasta_fotos = $_GET["pasta"]; ) - Erro


http://fernandoinformatica.com/pilastro/galeria/galeria2.php?pasta=06513050


O código abaixo:


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR...nsitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title>Galeria Simples usando PHP</title>



<!--

###################################

## Estilos              ##

###################################

-->

<style>

body {

text-align:center;

margin:0;

padding:0;

}

div {

padding:13px;

display:block;

border:1px solid #ddd;

background:#eee;

font-size:10px;

font-family:Arial, Helvetica, sans-serif;

color:#999;

margin:0 auto;

}

div.thumb {

float:left;

margin:0 14px 14px 0;

padding:0;

}

div.thumb a {

float:left;

padding:13px;

}

div.thumb a:hover {

background:#b70000;

}

div.thumb img {

width:100px;

height:100px;

}

div p {

padding:8px 0 0px;

margin:0;

}

div a {

color:#666;

text-transform:uppercase;

text-decoration:none;

font-weight:bold;

}

div a:hover {

color:#b70000;

text-decoration:underline

}

</style>

</head>

<body>



<!--

#################################

## Lógica             ##

#################################

-->

<?php


//URL onde o arquivo PHP vai ficar


$pasta_fotos = $_GET["pasta"];

// $pasta_fotos = "06513050";

$pasta = $pasta_fotos;


//URL onde o arquivo PHP vai ficar

$url_galeria = "galeria2.php";


//Início da função


$fotos = array();


//Loop que percorre a pasta das imagens e armazena o nome de todos os arquivos

foreach(glob($pasta . '/{*_p.jpg,*_p.gif}', GLOB_BRACE) as $image) {


$fotos[] = $image;


}


//Verifica se deve exibir a lista ou uma foto

    if ($_GET["image"] == "") {


//Faz o loop pelo folder de imagens

for($i=0; $i < count($fotos); $i++) {


//Cria cada uma das thumbs dentro de uma <div> com link para a imagem grande

echo "<div class='thumb'>";

echo "<a href='" . $url_galeria . "?image=" . $i . "'>";

echo "<img src='" . $fotos[$i] . "'>";

echo "</a>";

echo "</div>";


}


} else {


//Guarda o nome da imagem para montar o link da imagem grande

$foto_g = explode("_p", $fotos[$_GET["image"]]);


//Configura os links de próxima e anterior

if ( $_GET["image"] == 0 ) { $anterior = ""; } else { $anterior = $_GET["image"] - 1; }

if ( $_GET["image"] == count($fotos)-1 ) { $proxima = ""; } else { $proxima = $_GET["image"] + 1; }


//Quando solicitada uma imagem em particular, monta a <div> e insere a imagem grande de acordo com o link

echo "<div>";

echo "<a href='" . $url_galeria . "?image=" . $proxima . "'>";

echo "<img src='" . $foto_g[0] . "_g" . $foto_g[1] . "'>";

echo "</a>";

echo "<p><a href='" . $url_galeria . "?image=" . $anterior . "'>Foto anterior</a> | <a href='" . $url_galeria . "'>Voltar para a galeria</a> | <a href='" . $url_galeria . "?image=" . $proxima . "'>Próxima foto</a></p>";

echo "</div>";


}


?>

</body>

</html>



Gostaria de uma ajuda

Viewing all articles
Browse latest Browse all 14700