Na, das müsstest du dich aber hinbekommen.
Probier das ganze mal mit tabellen aufzuabun. Ansosnten gibts in ein paar Tagen bei mir auf der Seite nen Script. Muss das nur noch hochstellen
<?
// Der Ordner wird geöffnet
$inputdir = opendir ('images');
// Dateien, die gefiltert werden sollen - Hier die DOS Verzeichnisse
// und die ..
$pattern = ".|..";
$i = 1;
// Eine Schleife - Alle Dateien werden gelesen
while ($datei = readdir ($inputdir))
{
// Ist die Prüfung durch den Filter erfolreich?
if (!ereg($datei,$pattern)) {
// Dateiname wird zerlegt und in einem Array gespeichert
$name=explode(".",$datei);
// Ausgabe des korrekt formatierten Links
echo "<a href='images/$datei' target='_blank'><img width=\"70\" height=\"80\" src='images/$datei' border='0'></a>\n";
if(!($i++%9)) echo"<br />";
}
}
closedir ($inputdir);
?>
<?php
/* -----------------------------
PHP-Fotoalbum by Johannes Wienke
------------------------------*/
/* Voreinstellungen */
$ordner = "bilder"; //Verzeichnis zu den Bildern
$length = "3"; //Länge der Reihen
/* Funktion, die das angegebene Verzeichnis inklusive aller Unterverzeichnisse
durchläuft und nach Thumbnails durchsucht. Diese werden im Array $thumbs
gespeichert. Es können also nur Bilder angezeigt werden, zu denen auch Thumbnails
vorhanden sind*/
function get_dir ($dir) {
global $thumbs, $i;
$typ = "jpg";
$fp = opendir($dir);
while($datei = readdir($fp)) {
if (is_dir("$dir/$datei") && $datei!="." && $datei!="..") {
get_dir("$dir/$datei");
}else{
if (preg_match("/^index/", $datei)) continue;
if (preg_match("/\.\.?$/", $datei)) continue;
if (preg_match("/\.".$typ."$/i", $datei) && preg_match("/k_/", $datei)) {
$thumbs[] = "$dir/$datei";
}
}
$i++;
}
closedir($fp);
}
//Funktionsaufruf
get_dir("$ordner");
//Berechnung der vollen Reihen und der restlichen Bilder
$reihen = floor(sizeof($thumbs) / $length);
$rest = sizeof($thumbs) - $reihen * $length;
//Ausgeben voller Reihen
for ($k=0;$k<$reihen;$k++) {
echo "<table cellpadding=\"0\" cellspacing=\"0\" border=\"0\" style=\"margin-bottom:7px; table-layout:fixed\"><tr>\n";
for($l=0;$l<$length;$l++) {
$thumbnow = $k * $length + $l;
$size = getimagesize("$thumbs[$thumbnow]");
$bildnow = ereg_replace("thumbnails/k_", "", $thumbs[$thumbnow]);
echo "<td align=\"center\" style=\"background-color:#E1F0FF; border:1px white solid; padding: 4px\"><a href=\"$bildnow\" target=\"_blank\"><img src=\"$thumbs[$thumbnow]\" width=\"$size[0]\" height=\"$size[1]\" border=\"0\" alt=\"zum Vergrößern klicken\" style=\"border:1px white solid\"></a></td>\n";
if ($l < $length - 1) echo "<td width=\"7\"> </td>\n";
}
echo "</tr></table>\n";
};
//Ausgeben der unvollständigen Reihe
if ($rest <> 0) {
echo "<table cellpadding=\"0\" cellspacing=\"0\" border=\"0\" style=\"table-layout:fixed\"><tr>\n";
for($l=0;$l<$rest;$l++) {
$thumbnow = $reihen * $length + $l;
$size = getimagesize("$thumbs[$thumbnow]");
$bildnow = ereg_replace("thumbnails/k_", "", $thumbs[$thumbnow]);
echo "<td style=\"background-color:#E1F0FF; border:1px white solid; padding:4px\"><a href=\"$bildnow\" target=\"_blank\"><img src=\"$thumbs[$thumbnow]\" width=\"$size[0]\" height=\"$size[1]\" border=\"0\" alt=\"zum Vergrößern klicken\" style=\"border:1px white solid\"></a></td>\n";
if ($l < $rest - 1) echo "<td width=\"7\"> </td>\n";
}
echo "</tr></table>\n";
};
?>
Und jetzt gerade noch ein beschreibender Text dazu:
Mit diesem Script könnt ihr aus einem Verzeichnis mit Bildern automatisch ein Fotoalbum erstellen lassen. Vorausgesetzt wird, dass in einem Unterverzeichnis schon Thumbnails zu den Bildern angeleget sind. Dies lässt sich z.B. sehr komfortabel mit der Freeware <a href="http://www.fookes.com/ezthumbs/index.html?2.53" target="_blank">Easy Thumbnails</a> machen. Theoretisch könnte man die Thumbnails auch direkt mit PHP und GD ersetllen lassen, was aber in vielen Fällen zu Problemen und starken Qualitätsverlusten führt.<br>
Die Originalbilder müssen für das Fotoalbum in einem eigenen Ordner liegen, der noch ein Unterverzeichnis mit den Thumbnails enthält. Die Thumbnails werden in diesem Beispiel mit dem Prefix <i>k_</i> gekennzeichnet (kann im Script aber auch geändert werden).<br><br>