Pra isso é necessário apenas dois arquivos:
» gerar_thumb.php //Esse arquivo aqui é o que vai criar thumbs.
» thumbs.php //Esse arquivo aqui é o que vai mostrar as thumbs e lista-las (você pode até escolher quantas mostrar por linha).
Bem, vamos ao que interessa.
gerar_thumb.php
<?php $pasta = "imagens"; //Bote aqui a pasta onde estão as imagens (se o arquivo estiver na mesma pasta das imagens deixe em branco) $filename = "$pasta/$filename"; //não mude aqui $thumb_x = 100; //Largura da thumb $thumb_y = 150; //Altura da thumb $quality = 80; //Qualidade (melhor não mudar) //Deixe essa parte como está $thumbnail = imagecreatetruecolor($thumb_x, $thumb_y); $originalimage = imagecreatefromjpeg($filename); imagecopyresized($thumbnail, $originalimage, 0, 0, 0, 0, $thumb_x, $thumb_y, ImageSX($originalimage),ImageSY($originalimage)); imagepng($thumbnail,'',$quality); ?>
Bem, agora que fizemos a página que vai gerar as thumbs nós iremos fazer a página que vai mostrar todos as thumbs.
thumbs.php
<script> function Selected(what) { what.style.border = "3px Solid red"; } function Unsel(what) { what.style.border = "3px Solid #000000"; } </script> <table width=60% style="border: 1px solid #000000;" cellspacing=2 cellpadding=2> <? $totalporlinha="4"; // Total de fotos por linha $pasta = "imagens"; // Pasta de onde estão as fotos (se o arquivo estiver na mesma pasta das fotos bote apenas "./") $open = opendir("$pasta/"); //Abre a pasta while ($foto = readdir($open)) { //Lê a pasta if (eregi(".jpg",$foto)) { //Verifica se o arquivo é mesmo JPG if ($cont == "") { $cont="0"; } if ($cont=="0") { echo "<tr>"; } $cont++; echo " <td> <a href=\"sab/$foto\"> <img style=\"border: 3px solid #000000\" onmouseover=Selected(this); onmouseout=Unsel(this); src=\"gera_thumb.php?filename=$foto\"> </a></td>"; //Mostra as thumbs if ($cont=="$totalporlinha") { echo "</tr>"; $cont="0"; } } } ?> </table>
Bem, é isso ai pessoal.
Lembrem-se, é necessário ter a biblioteca GD instalada no servidor, caso contrario o script não irá funcionar (Eu uso WAMP5 [Windows + Apache 1.33 + Mysql 4.* + PHP 5])
O script foi testado e funcionou corretamente, caso ocorra algum erro poste aqui.
[]'s Inté