Hola de nuevo,
veamos, hice algunos arreglos a tu codigo, asi deberia funcionar bien. Tu archivo redimensionar.php seria algo asi:
Código PHP:
<?php
//Si no se ha especificado el archivo
if(empty($_GET['archivo'])) {
echo 'No se especifico la ruta';
exit;
}
//Si no se ha especificado el archivo
if(empty($_GET['alto'])) {
echo 'No se especifico el nuevo alto de la imagen';
exit;
}
//Si no se ha especificado el archivo
if(empty($_GET['ancho'])) {
echo 'No se especifico el nuevo ancho de la imagen';
exit;
}
$archivo = $_GET['archivo'];
//Averiguamos la extension del archivo, porque de eso van a depender las funciones a usar
$extension = explode('.',$archivo);
$extension = $extension[count($extension)-1];
//Escoger la funcion. Usamos la funcion switch
switch($extension) {
case 'jpg':
$f1 = "imagecreatefromjpeg";
$f2 = "imageJpeg";
$type = "jpeg";
break;
case 'gif':
$f1 = "imagecreatefromgif";
$f2 = "imageGif";
$type = "gif";
break;
case 'png':
$f1 = "imagecreatefrompng";
$f2 = "imagePng";
$type = "png";
break;
default:
echo 'Error, tipo desconocido de archivo: '.$extension;
exit;
}
$img_fuente = @$f1($archivo);
$img_ancho= imagesx($img_fuente);
$img_alto =imagesy($img_fuente);
$ancho = $_GET['ancho'];
$alto = $_GET['alto'];
$imagen = imagecreate($ancho, $alto);
imagecopyresized($imagen, $img_fuente, 0, 0, 0, 0, $ancho, $alto, $img_ancho,
$img_alto);
Header("Content-type: image/$type");
$f2($imagen);
?>
Como veras, tiene mucho que ver el tipo de imagen (gif, jpeg, png).
Espero te sirva
Salu2