- Thumbnail-Vorschau mit variabler Breite
Durchsuchen von Verzeichnis und Unterverzeichnissen
Code: Alles auswählen
?>
<table cellspacing="0" cellpadding="5" border="0">
<tr>
<td>Image-Directory:</td>
<td><input size=20 type="text" name="CMS_VAR[1]" value="CMS_VALUE[1]"></td>
</tr><tr>
<td>Max Breite:</td>
<td><input size=20 type="text" name="CMS_VAR[2]" value="CMS_VALUE[2]"></td>
</tr><tr>
<td>Zeitlimit in Sek.:</td>
<td><input size=20 type="text" name="CMS_VAR[3]" value="CMS_VALUE[3]"></td>
</tr>
</table>
<?php
- Nach dem Startverzeichnis (z.B.: "./upload/bildergalerie/user")
Der maximalen Breite in Pixel (z.B.: "200")
Das Zeitlimit für die Verzeichnissuche (z.B.: "5")
Das Thumbnail ist kein echtes Thumbnail sondern es wird nur runterskaliert. Gleichzeitig erhält es einen Link womit das Bild in einem neuen Fenster in der Originalgröße angezeigt wird.
Es wird nach Dateien mit .gif, .jpg, .jpeg und .png Endung gesucht.
Der Output-Code:
Code: Alles auswählen
<?php
$dateien = array();
$start=time();
get_dir("CMS_VALUE[1]",$start,"CMS_VAR[3]");
$breite = (int) "CMS_VALUE[2]";
#Was gefunden
if (count($dateien) < 1)
{ echo "nix gefunden"; }
else
{ # Array sortieren
sort($dateien);
# Zufall
srand ((double) microtime() * 10000000);
$rand_keys = array_rand ($dateien, 2);
$Zufallsbild = $dateien[$rand_keys[0]];
$dimensions = GetImageSize($Zufallsbild);
echo "<a href=\"$Zufallsbild\" target=\"_blank\">";
if ($dimensions[0] > $breite)
{ echo "<img src=\"$Zufallsbild\" width=\"$breite\""; }
else
{ echo "<img src=\"$Zufallsbild\""; }
echo " border=\"0\" alt=\"Klick mich für eine Großansicht (neues Fenster)\"></a><br>\n";
}
function get_dir ($dir,$startzeit,$zeitlimit)
{ global $dateien;
$fp=opendir($dir);
while($datei=readdir($fp))
{ if (is_dir("$dir/$datei") && $datei!="." && $datei!="..")
{ if (time()-$starttime > $zeitlimit) get_dir("$dir/$datei",$startzeit,$zeitlimit); }
else
{ if (strlen($datei) > 4)
{ $ext = strtolower(substr($datei,-4));
if ($ext==".jpg" || $ext==".gif" || $ext=="jpeg" || $ext==".png")
{ $dateien[] = $dir . "/" . $datei; }
}
}
}
closedir($fp);
}
?>
Vielleicht kann es ja noch jemand gebrauchen.
Grüße
Milly