Hallo alle zusammen,
ich habe ein Problem und bin mittlerweile schon am verzweifeln,weil ich seit zwei Wochen dran sitze und es nicht hinbekomme.
Folgende Situation:
Ich möchte auf einer Website wenn man auf den Menü-Punkt "Galerie" geht einige Bilder auslesen lassen. Jetzt habe ich die Bilder aber alle in verschiedenen Größen und das laden dauert ewig, da ich sie aktuell provisorisch mit dem width und heigt Befehl auf 20% der aktuellen Größe verkleinern lasse, was aber den traffic frisst.
Dazu wollte ich jetzt mit einer Thumbnail funktion die Bilder in Länge und Breite mit 20% der Originalgröße erstellen lassen,dann speichern lassen und auslesen lassen,sodass die Proportionen beibehalten werden und die Bilder nicht ewig neu geladen werden müssen.
Also angezeigt werden sollen die automatisch erstellten Thumbnails mit einer Größe von 20% der Originalgröße in Länge und Breite, die auch in dem gleichen Ordner wie das Originalbild gespeichert werden. Diese würde ich dann nochmal mit dem Originalbild verknüpfen, dass wenn man auf das Thumbnail klickt,automatisch das Bild in Originalgröße gezeigt wird.
Das Problem ist,ich möchte dies für mehrere Dateien gleichzeitig machen, da ich die Bilder alle nt_"HIER VORTLAUFENDE ZAHL" genannt habe und so alle auch gleichzeitig abfragen will. Jetzt habe ich in dem Script erstmal so angefangen, dass ich das Thumbnail erstmal nur anzeigen lassen will und noch nicht speichern und da bin ich schon gescheitert, es funktioniert einfach nicht...
Hier mein Script:
<?
echo "<div class="us">Galerie</div>\n";
function resizePicture($file, $width, $height)
{
if(!file_exists($file))
return false; header('Content-type: image/jpg');
$info = getimagesize($file);
if($info[2] == 1)
{
$image = imagecreatefromgif($file);
}
elseif($info[2] == 2)
{
$image = imagecreatefromjpeg($file);
}
elseif($info[2] == 3)
{
$image = imagecreatefrompng($file);
}
else
{
return false;
} if ($width && ($info[0] < $info[1]))
{
$width = ($height / $info[1]) * $info[0];
}
else
{
$height = ($width / $info[0]) * $info[1];
}
$imagetc = imagecreatetruecolor($width, $height);
imagecopyresampled($imagetc, $image, 0, 0, 0, 0, $width, $height,
$info[0], $info[1]);
imagejpeg($imagetc, null, 100); }
function resizePicture2($file2, $width, $height)
{
if(!file_exists($file2))
return false;
$info2 = getimagesize($file2);
if($info2[2] == 1)
{
$image2 = imagecreatefromgif($file2);
}
elseif($info2[2] == 2)
{
$image = imagecreatefromjpeg($file2);
}
elseif($info2[2] == 3)
{
$image = imagecreatefrompng($file2);
}
else
{
return false;
} if ($width && ($info2[0] < $info2[1]))
{
$width = ($height / $info2[1]) * $info2[0];
}
else
{
$height = ($width / $info2[0]) * $info2[1];
}
$imagetc2 = imagecreatetruecolor($width, $height);
imagecopyresampled($imagetc2, $image2, 0, 0, 0, 0, $width, $height,
$info2[0], $info2[1]);
imagejpeg($imagetc2, null, 100); }
function resizePicture3($file3, $width, $height)
{
if(!file_exists($file3))
return false;
$info3 = getimagesize($file3);
if($info3[2] == 1)
{
$image3 = imagecreatefromgif($file3);
}
elseif($info3[2] == 2)
{
$image3 = imagecreatefromjpeg($file3);
}
elseif($info3[2] == 3)
{
$image3 = imagecreatefrompng($file3);
}
else
{
return false;
} if ($width && ($info3[0] < $info3[1]))
{
$width = ($height / $info3[1]) * $info3[0];
}
else
{
$height = ($width / $info3[0]) * $info3[1];
}
$imagetc3 = imagecreatetruecolor($width, $height);
imagecopyresampled($imagetc3, $image3, 0, 0, 0, 0, $width, $height,
$info3[0], $info3[1]);
imagejpeg($imagetc3, null, 100); }for($i = 1; $i <= 45; $i += 2)
$file = 'img/Pfad/Album/nt_".$i.".jpg';
$file2 = 'img/Pfad/Album/nt_".($i + 1).".jpg';
$file3 = 'img/Pfad/Album/nt_46.jpg';
$width = 20%;
$height = 20%;
{
echo " <img src="resizePicture($file, $width, $height);" alt="Galerie"style= "border: 1px solid #666;" /></img>\n";
echo " <img src="resizePicture2($file2, $width, $height);" alt="Galerie" style="border: 1px solid #666;" ></img>\n";
}
echo " <img src="resizePicture3($file3, $width, $height);" alt="Galerie" style="border: 1px solid #666;" /></img>\n";
?>
Alles anzeigen
Könnte mir jemand Bitte dabei helfen die funktionen so umzuschreiben und abzufragen, dass es so funktioniert wie ich es brauche?
Wie man sieht sind es aktuell 46 Bilder für die das gleichzeitig geschehen soll.
Vielen Dank im voraus!
Mit freundlichen Grüßen
HansPeterUwe93