http://php.net/manual/en/function.image-type-to-extension.php buradan bakarak yaptım. Yanlış olabilir ama mantık doğrudur, hatasını düzeltirsin.
Resmin sonunda .jpg yoksa o resmin uzantısını değiştir ve eski resmi sil dedim.

$xyz = pathinfo($benzersizad);

if ($xyz == "jpg") { return($benzersizad); }

else {

$yeniad = $resimgyol['dirname'].'/'.$resimgyol['benzersizad'].'.jpg';

if (imagejpeg($resimgyol, $yeniad)) {


imagedestroy($resimgyol); return($yeniad);

} else {

imagedestroy($resimgyol);

die("Error creating ".$yeniad."\n");




}
}

}




die("hataa".$benzersizad."\n");
}


Boyut değiştirmeyi de buradan bakarak yapabilirsin.
http://php.net/manual/en/function.imagecrop.php
Ben gd kütüphanesini tam bilmiyorum, hatalı olabilir. Örneklere bakarak yaptım.