Código:
$img2 = "images/$name_image";
$img = imagecreatefromjpeg($img2);
$x_image = imagesx($img);
$y_image = imagesy($img);
$_division = $x_image / $y_image;
$y_menos = 0;
$x_newimage = $x_image;
$y_newimage = $y_image;
if( $x_image > 680 )
{
while( $x_newimage > 680 )
{
$x_newimage -= 20;
$y_menos += 20;
}
$y_menos = $y_menos / $_division;
$y_newimage = $y_image - $y_menos;
$new_image = imagecreatetruecolor($x_newimage,$y_newimage);
imagecopyresized($new_image,$img,0,0,0,0,$x_newimage,$y_newimage,$x_image,$y_image);
imagejpeg($new_image,$name_image,100); //$name_image si existe aunque no se muestre
}
saludos y espero que pueda ayudarme :D