io definisco quanto deve essere la larghezza delle foto, in modo da avere uniformità.
fai conto:
Codice PHP:
$larghezza = 450;
poi faccio
Codice PHP:
list($width, $height, $type, $attr) = getimagesize($uploadfile); //$uploadfile è il percorso del file compreso del nome del file
$source = imagecreatefromjpeg($uploadfile);
$numero = ($larghezza/$width); // ottengo un numero tra 0 e 1, che dovrò usare nella riga sotto
//creo un file delle dimensioni proporzionate, con larghezza uguale a $width*$numero che già so che fa 450..
$thumb = imagecreatetruecolor($width*$numero, $height*$numero);
imagecopyresampled($thumb, $source, 0, 0, 0, 0, $width*$numero, $height*$numero, $width, $height);
//salvo l'immagine. $path è il percorso + il nome della immagine
imagejpeg($thumb, $path, 65);
ovviamente faccio questa operazione per tutte le dimensioni che mi servono.. fai conto una miniatura di 200, quella di 450 e quella grande di 700..