hola amigos cuantos no hemos tenido el problema con algunas imagenes que son muy grandes para nuestro diseño q tenemos que hacer thumbnails .
nada ya eso se termino con este script podemos hacer todo esto podemos redimensionar imagenes en formatos jpg,png y los famosos gif
para esto solo basta con pasarle la url de la imagen y listo ahora les explicare un poco en que consiste todo


<?php
// Configuracion de la altura y ancho maximo de la imagen 
$anchura=600;
$hmax=400;

// Parametro a enviar - es decir origen de la imagen 
$nombre=$_GET['imagen'];


// Tomando informacion de la imagene, esta funcion envia los datos a un array
$datos = getimagesize($nombre); 


if($datos[2]==1){$img = @imagecreatefromgif($nombre);}  // si es un Gif

if($datos[2]==2){$img = @imagecreatefromjpeg($nombre);} // si es un jpg

if($datos[2]==3){$img = @imagecreatefrompng($nombre);} //  si es un png


/*
 aqui empieza lo bueno 
 como bien sabemos no podemos redimensionar una imagen vertical de la misma forma que una horizontal
 bueno esta parte del script no ayuda a poder hacerlo lo que realiza es dividir el ancho original entre 
 el ancho maximo y luego divide la altura original entre el resultado anterior
 bueno esto es para el ancho
*/

$ratio = ($datos[0] / $anchura);
$altura = ($datos[1] / $ratio);



/*
 Para el Alto
 sera esto primero pregunta si el alto es mayor que el alto maximo que hemos definido 
 esto solo significa que es una imagen vertical claro si la condicion nos da true
 lo que aremos sera multiplicar la altura maxima por la anchura que hemos definido
 y la dividimos entre la altura esto nos dara una imagen vertical apropiada para 
 nuestra muestra
*/


if($altura>$hmax){

   $anchura2 = $hmax*$anchura/$altura;
   $altura = $hmax;
   $anchura = $anchura2;
}



$thumb = imagecreatetruecolor($anchura,$altura); // se crea una imagen en blanco


// Procedemos a remplazar la imagen antigua por la nueva 
imagecopyresampled($thumb, $img, 0, 0, 0, 0, $anchura, $altura, $datos[0], $datos[1]); 


// Preguntamos el tipo de imagen para saber que cabezera enviar
if($datos[2]==1){header("Content-type: image/gif"); imagegif($thumb);}
if($datos[2]==2){header("Content-type: image/jpeg");imagejpeg($thumb);}
if($datos[2]==3){header("Content-type: image/png");imagepng($thumb); }


// Destruimos la imagen temporal para no recargar el servidor 
imagedestroy($thumb);

// Listo ya tenemos nuestro redimensionador listo 
?>