Hallo,
die Reihenfolge stimmt in deinem Script nicht:
1.schauen ob File vorhanden
2.Bild in thumb Order kopieren
3.Breiten+Längenverhältnis klären
4.Bild erstellen
5.mit Verkleinern
Anbei ein Beispiel das funktioniert
PHP-Code:
copy("../fotoalbum/".$filename,"../fotoalbum/thumbs/".$filename);
$image2 = "../fotoalbum/thumbs/".$filename;
$image25 = $filename;
$gewuenschtebreite2 = "128";
$info2 = getimagesize($image2);
$orginalbreite2 = $info2['0'];
$orginalhoehe2 = $info2['1'];
$neuebreite2 = $gewuenschtebreite2;
if($orginalbreite2 > $neuebreite2)
{
if(($_FILES['userfile']['type'] == "image/jpg") OR ($_FILES['userfile']['type'] == "image/JPG") OR ($_FILES['userfile']['type'] == "image/JPEG") OR($_FILES['userfile']['type'] == 'image/pjpeg'))
{
$verhaeltnis2 = $orginalbreite2 / $orginalhoehe2;
$neuehoehe2 = round($neuebreite2 / $verhaeltnis2);
$bilda2 = imagecreatefromjpeg($image2);
if(!$bildn2)
{
$bildn2 = imagecreatetruecolor($neuebreite2, $neuehoehe2);
imagecopyresized($bildn2,$bilda2,0,0,0,0,$neuebreite2,$neuehoehe2,$orginalbreite2,$orginalhoehe2);
imagejpeg($bildn2,$image2,100);
$bb=imagejpeg($bildn2,$image2,100);
} }}
Und dann für jpeg, gif und png jeweils und man kann noch ermitteln ob Hochformat oder Querformat und diese Formate unterschiedlich breit machen.