Ver Mensaje Individual
  #1 (permalink)  
Antiguo 05/04/2008, 20:30
gesking
 
Fecha de Ingreso: diciembre-2006
Mensajes: 294
Antigüedad: 17 años, 5 meses
Puntos: 2
Cambiar tamaño imagen automaticamente

Hola, tengo un sistemita que estoy creando, donde subo una imagen. Si esta imagen tiene un ancho mas grande que 700 pixeles, pone el ancho en 700 y proporciona el alto.

Ejemplo: tamaño original de la imagen: 1000x500, la nueva toma como ancho 700 y el alto 350...

Pero me tira este error:

Warning: imagecreatetruecolor() [function.imagecreatetruecolor]: Invalid image dimensions in fotos_nueva.php on line 74

Warning: imagecopyresampled(): supplied argument is not a valid Image resource in fotos_nueva.php on line 76

Warning: imagejpeg(): supplied argument is not a valid Image resource in fotos_nueva.php on line 78

Warning: imagedestroy(): supplied argument is not a valid Image resource in fotos_nueva.php on line 82


Este es la parte del script donde salta el error:

Código PHP:
$tipo $HTTP_POST_FILES['archivo']['type'];

function 
miniatura($nombre_imagen$nombre_miniatura){

$ancho_max 700;

$nombre basename($HTTP_POST_FILES['archivo']['tmp_name']);

$datos getimagesize($nombre);

$ancho $datos[0];
$alto $datos[1];

if(
$ancho $ancho_max){
$ancho_nuevo $ancho;
$alto_nuevo $alto;
}else{
$ancho_nuevo $ancho_max;
$alto2 $ancho_max $alto;
$alto_nuevo $alto2 $ancho;
}

if(
$GLOBALS['tipo']=="image/jpeg" || $GLOBALS['tipo']=="image/pjpeg") { $img imagecreatefromjpeg($nombre_imagen); }
if(
$GLOBALS['tipo']=="image/gif") { $img imagecreatefromgif($nombre_imagen); }
if(
$GLOBALS['tipo']=="image/png" || $GLOBALS['tipo']=="image/x-png") { $img imagecreatefrompng($nombre_imagen); }

$tmp_img imagecreatetruecolor($ancho_nuevo,$alto_nuevo);

imagecopyresampled($tmp_img$img0000$ancho_nuevo$alto_nuevo$datos[0], $datos[1]);

if(
$GLOBALS['tipo']=="image/jpeg" || $GLOBALS['tipo']=="image/pjpeg") { imagejpeg($tmp_img$nombre_miniatura); }
if(
$GLOBALS['tipo']=="image/gif") { imagegif($tmp_img$nombre_miniatura); }
if(
$GLOBALS['tipo']=="image/png" || $GLOBALS['tipo']=="image/x-png") { imagepng($tmp_img$nombre_miniatura); }

imagedestroy($tmp_img);
}

$foto $HTTP_POST_FILES['archivo']['name'];
$dir '../notas/';
$foto2 $dir.$foto;

miniatura($_FILES['archivo']['tmp_name'], $foto2); 


No se como resolverlo, espero ayuda. Gracias