Mám kód, ktorý by mal uploadnuť obrázok v pôvodnej veľkosti a tiež by mal vytvoriť thumbnail. Problém je v tom, že thumbnail je vždy len čierny obrázok. Kde môže byť chyba? Tu je kód:
Kód:
if(isset($_FILES["file2"]["name"]))
{
$extension = end(explode(".", $_FILES["file2"]["name"]));
if ((($_FILES["file2"]["type"] == "image/gif")
|| ($_FILES["file2"]["type"] == "image/jpeg")
|| ($_FILES["file2"]["type"] == "image/png")
|| ($_FILES["file2"]["type"] == "image/pjpeg"))
&& ($_FILES["file2"]["size"] < $maxfs)
&& in_array($extension, $allowedExts))
{
if ($_FILES["file2"]["error"] > 0)
{
echo "Nepodporovaný formát obrázka.";
}
else
{
$fn = substr(md5(time() * rand(1,1000)), 0, 10);
move_uploaded_file($_FILES["file2"]["tmp_name"], "images/$fn.$extension");
$nazovobr= "$fn.$extension";
//thumbnail
$tmp = $_FILES['file2']['tmp_name'];
$typ = $_FILES['file2']['type'];
$sirka=228;
$vyska=152;
$cesta="images/thumb_$fn.$extension";
list($aktualnisirka, $aktualnivyska) = getimagesize($tmp);
if($typ == "image/pjpeg" || $typ == "image/jpeg")
{
$new_img = imagecreatefromjpeg($tmp);
}
elseif($typ == "image/bmp")
{
$new_img = imagecreatefromwbmp($tmp);
}
elseif($typ == "image/x-png" || $typ == "image/png")
{
$new_img = imagecreatefrompng($tmp);
}
elseif($typ == "image/gif")
{
$new_img = imagecreatefromgif($tmp);
}
if (function_exists(imagecreatetruecolor))
{
$upraveny = imagecreatetruecolor($sirka,$vyska);
}
else
{
die("
Musíte mít GD library verzi 2+
");
}
imagecopyresampled($upraveny, $new_img, 0, 0, 0, 0, $sirka, $vyska, $aktualnisirka, $aktualnivyska);
$obrazekhotov = Imagejpeg ($upraveny, $cesta);
move_uploaded_file ($obrazekhotov, $cesta);
}
}
}