<?php
include ("functions.php");
// Diese Datei ins Oberverzeichnis legen
// Erzeugt im ausgewählten Ordner Thumbnails
// Aufruf: datei.php?dir=ordner
$zielordner = "gallery"; // Hier den Ordnernamen angeben, in dem sich die Unterordner mit den Bildern befinden
$picsperrow = 8; // Wieviele Bilder pro Zeile?
$sx_main = 120; // Maximale Seitenlänge in Pixel
$filetypes = array("jpg");
$i = 0;
?>
<body bgcolor="#708090">
<?php
menu (0);
echo "<table><tr>";
$dir = $zielordner."/".$_GET['dir'];
// Handle starten
$handle = openDir($dir);
// DIR lesen
while ($filename = readdir($handle))
{
// Return-Buttons ignorieren
if($filename != ".." && $filename != ".")
{
// Nur auf Dateien mit Endung jpg anwenden
$teile = explode(".",$filename);
$x = sizeof($teile)-1;
if(in_array(strtolower($teile[$x]),$filetypes))
{
// Bilder mit Prefix "th_" nicht behandeln
if(substr($filename,0,3) != "th_")
{
// Deklariere Adresse für Link
$ziel = $dir."/".$filename;
// Deklariere Adresse zum Thumbnail
$thumb = $dir."/th_".$filename;
// Prüfe, ob Thumbnail schon existiert
if(!file_exists($thumb))
{
// Wenn nicht, dannThumbnail erzeugen
$im = imagecreatefromjpeg($ziel);
// Bild-Relationen errechnen
$rel = imagesx($im) / imagesy($im);
if(imagesx($im) < imagesy($im))
{
$sy = $sx_main;
$sx = $sy * $rel;
}
else
{
$sy = $sx_main / $rel;
$sx = $sx_main;
}
$im2 = imageCreateTrueColor($sx, $sy);
imagecopyresized($im2,$im,0,0,0,0,$sx,$sy,imagesx($im),imagesy($im));
// und Thumbnail im selben Ordner mit Prefix "th_" speichern
imagejpeg($im2, $thumb);
imagedestroy($im2);
imagedestroy($im);
}
// Bildname filtern
$bildname = str_replace("_"," ",$filename);
$n_teile = explode(".",$filename);
$bildname = $n_teile[0];
// Das Bild mit Verweis auf Großansicht anzeigen
if($i == $picsperrow)
{
echo "</tr><tr>";
$i = 1;
}
else $i++;
echo "<td align='center'><a href='$ziel' target='_blank'><img border='0' src='$thumb'></a><br> ";
echo "$bildname</td>";
}
}
}
}
echo "</tr></table>";
// handle schließen
closeDir($handle);
?>
</body>