Oto mój skrypt tworzenia miniaturek do grafiki, która jest dodawana na mój portal. Lecz mam poroblem z nim, ponieważ skrypt nie wiem czemu nie chce robić miniaturek np. gdy rozszerzenie jest np. JPG, GIF. Do rozszerzeń jpg i gif(pisane małymi) robi miniaturki. Czy ktoś mógłby mi pokazać w którym miejscu jest błąd.
Z góry dziękuję.
<?php
function tworz_miniaturke($plik_katalog, $plik_nazwa, $miniaturka_katalog, $miniaturka_nazwa, $max_szerokosc, $max_wysokosc)
{
$miniaturka_nazwa = str_replace('{nazwa}', $plik_nazwa, $miniaturka_nazwa);
$plik_rozszerzenie = explode('.', $plik_katalog.$plik_nazwa); $plik_rozszerzenie = $plik_rozszerzenie[count($plik_rozszerzenie)-1
];
switch ($plik_rozszerzenie)
{
case 'jpg':
case 'jpeg': $img = imagecreatefromjpeg($plik_katalog.$plik_nazwa); break;
case 'gif': $img = imagecreatefromgif($plik_katalog.$plik_nazwa); break;
case 'png': $img = imagecreatefrompng ($plik_katalog.$plik_nazwa); break;
}
if (!$img)
return false;
if ($dane_obr[0] > $max_szerokosc || $dane_obr[1] > $max_wysokosc)
{
$wysokosc = intval((($max_szerokosc/$dane_obr[0
]))*$dane_obr[1
]); $szerokosc = intval($max_szerokosc); if ($wysokosc > $max_wysokosc)
{
$wysokosc = intval($max_wysokosc); $szerokosc = intval((($max_wysokosc/$dane_obr[1
]))*$dane_obr[0
]); }
$min = imagecreatetruecolor($szerokosc, $wysokosc);
if (!$min)
{
imagedestroy($img);
return false;
}
imagecopyresized($min, $img, 0, 0, 0, 0, $szerokosc, $wysokosc, $dane_obr[0],$dane_obr[1]);
switch ($plik_rozszerzenie)
{
case 'jpg':
case 'jpeg': imagejpeg($min, $miniaturka_katalog.$miniaturka_nazwa, 100); break;
case 'gif': imagegif($min, $miniaturka_katalog.$miniaturka_nazwa, 100); break;
case 'png': imagepng($min, $miniaturka_katalog.$miniaturka_nazwa, 100); break;
}
}
else
{
$min = imagecreatetruecolor($dane_obr[0], $dane_obr[1]);
if (!$min)
{
imagedestroy($img);
return false;
}
imagecopy( $min, $img, 0, 0, 0, 0, $dane_obr[0], $dane_obr[1] );
switch ($plik_rozszerzenie)
{
case 'jpg':
case 'jpeg': imagejpeg( $min, $miniaturka_katalog.$miniaturka_nazwa, 100 ); break;
case 'gif': imagegif( $min, $miniaturka_katalog.$miniaturka_nazwa, 100 ); break;
case 'png': imagepng( $min, $miniaturka_katalog.$miniaturka_nazwa, 100 ); break;
}
}
imagedestroy($img);
imagedestroy($min);
return true;
}
?>