Masz tu skrypt robi on 3 różnej wielkości obrazki z tego otrzymanego, wystarczy że sobie go trochę przerobisz (skrypt jako taki powinien działać)
<?php
if(isset($_FILES['plik'])) {
$uploadfile = $_FILES["plik"]["tmp_name"];
$name = $_FILES["plik"]["name"];
$file = ($_SERVER['DOCUMENT_ROOT'].'/cms/'.$name);
$org = imagecreatefromjpeg($file);
$xs_new = 100;
if ($size_org[0] >= $size_org[1])
{
$y_new = $xs_new * $size_org[1] / $size_org[0];
$x_new = $xs_new;
}
else
{
$y_new = $xs_new;
$x_new = $xs_new * $size_org[0] / $size_org[1] ;
}
$new = imagecreatetruecolor($x_new,$y_new);
$dir = $_SERVER['DOCUMENT_ROOT'].'/cms/1_'.$name;
$upd_s = mysql_query("update texty set foto_s = '/cms/1_$name' where id_produktu = $rid"); imagecopyresampled($new,$org,0,0,0,0,$x_new,$y_new,$size_org[0],$size_org[1]);
imagejpeg($new,$dir,80);
imagedestroy($new);
$xml_new = 300;
if ($size_org[0] >= $size_org[1])
{
$ym_new = $xml_new * $size_org[1] / $size_org[0];
$xm_new = $xml_new;
}
else
{
$ym_new = $xml_new;
$xm_new = $xml_new * $size_org[0] / $size_org[1] ;
}
$newm = imagecreatetruecolor($xm_new,$ym_new);
$dir2 = $_SERVER['DOCUMENT_ROOT'].'/cms/2_'.$name;
$upd_m = mysql_query(" update texty set foto_m = '/cms/2_$name' where id_produktu = $rid"); imagecopyresampled($newm,$org,0,0,0,0,$xm_new,$ym_new,$size_org[0],$size_org[1]);
imagejpeg($newm,$dir2,80);
imagedestroy($newm);
$xl_new = 500;
if ($size_org[0] >= $size_org[1])
{
$ymb_new = $xl_new * $size_org[1] / $size_org[0];
$xmb_new = $xl_new;
}
else
{
$ymb_new = $xl_new;
$xmb_new = $xl_new * $size_org[0] / $size_org[1] ;
}
$newml = imagecreatetruecolor($xmb_new,$ymb_new);
$dir3 = $_SERVER['DOCUMENT_ROOT'].'/cms/3_'.$name;
$upd_l = mysql_query(" update texty set foto_l = '/cms/3_$name' where id_produktu = $rid"); imagecopyresampled($newml,$org,0,0,0,0,$xmb_new,$ymb_new,$size_org[0],$size_org[1]);
imagejpeg($newml,$dir3,80);
imagedestroy($newml);
imagedestroy($org);
}
?>