Загрузить фотку думаю сам сможешь а уменшение фотки я делал примерно так:
$img= ImageCreateFromJPEG ("a.jpg");
// получаем текущие размеры картинки
$imgX=ImageSX($img); // ширину
$imgY=ImageSY($img); // высоту
// размеры выводимой фотографии будет в 3 раза меньше
$curImgSX=intval($imgX/$scale);
$curImgSY=intval($imgY/$scale);
// создаем новую фотографию , которую и будем выводить.
$curImg=ImageCreate($curImgSX,$curImgSY);
ImageCopyResized($curImg,$img,0,0,0,0,$curImgSX,$curImgSY,$imgX,$imgY);
ImageJPEG($curImg);
Если фотку нужно сохранить в файле то последняя строка будет такой:
ImageJPEG($curImg,\'./images/a.jpg\',80);
Последний параметр подбираешь экспериментально - это качество влияет на фотки