Foros del Web » Programando para Internet » PHP »

sigue redimensionado de imagenes

Estas en el tema de sigue redimensionado de imagenes en el foro de PHP en Foros del Web. Perdonad que os moleste Quiero recibir una foto enviada por un formulario, redimensionarla (en este caso por 2 y 1.5 el ancho y alto respectivamente) ...
  #1 (permalink)  
Antiguo 15/10/2009, 07:06
Avatar de JOSANCIN  
Fecha de Ingreso: septiembre-2008
Ubicación: huesca
Mensajes: 298
Antigüedad: 15 años, 7 meses
Puntos: 0
sigue redimensionado de imagenes

Perdonad que os moleste



Quiero recibir una foto enviada por un formulario, redimensionarla (en este caso por 2 y 1.5 el ancho y alto respectivamente)

Los archivos que recibo los llamo de esta forma

$foto_name= $_FILES['foto']['name'];
$foto_size= $_FILES['foto']['size'];
$foto_type= $_FILES['foto']['type'];
$foto_temporal= $_FILES['foto']['tmp_name'];

He visto que $_FILES['foto']['tmp_name'] esta en la siguiente ubicacion C:\wamp\tmp\php116.tmp
mientras que mi archivo esta en C:\wamp\www\practica_guardar_imagenes1


//creo un array asociativo

static $img_types = array(
1 => 'Gif',
2 => 'Jpeg',
3 => 'Png'
);

//creo las nuevas medidas:

$tam=getimagesize($foto_temporal);
echo "<br>"."<br>";
echo "ancho imagen original ".$tam[0]."<br>";
echo "alto imagen original ".$tam[1];

$original_Ancho=$tam[0];
$original_Alto=$tam[1];

$ampliacion_X=2;
$ampliacion_Y=1.5;

$resultado_ancho=$original_Ancho*$ampliacion_X;
$resultado_alto=$original_Alto*$ampliacion_Y;

echo "<br>"."las nuevas medidas"."<br>"."<br>";
echo $resultado_ancho."<br>";
echo $resultado_alto."<br>";

//determino el tipo de archivo

echo "<br>"."tipo de archivo ".$img_types[$tam[2]];

//creo la imagen

$f_create = 'imageCreateFrom' . $img_types[$tam[2]];

if (!$img = $f_create($foto_temporal)){
echo "no se ha podido crear la imagen";
}

else{echo "<br>"."imagen creada correctamente";}

//creo una nueva imagen en blanco del tamaño de la ampliacion

$im_base=imagecreate($resultado_ancho,$resultado_a lto);
if (empty($im_base)){
echo "<br>"."no ha funcionado bien la creacion de imagen";

}

imagecopyresampled($im_base,$img,0,0,0,0,$resultad o_ancho,$resultado_alto,$original_Ancho,$original_ Alto);

...y ahora me choco con el muro.

al hacer

$f1= fopen($im_base,"rb") (para despues archivar $f1 en una tabla)

me sale el siguiente mensaje

Warning: fopen() expects parameter 1 to be string, resource given in C:\wamp\www\practica_guardar_im_tablas1\procesar2. php on line 67

¿sabrias alguno lo que puedo hacer?


Gracias y que vaya bien
  #2 (permalink)  
Antiguo 15/10/2009, 07:14
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 14 años, 11 meses
Puntos: 1517
Respuesta: sigue redimensionado de imagenes

Verifica que esta enviando la variable $im_base, usa var_dump
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #3 (permalink)  
Antiguo 15/10/2009, 07:33
Avatar de JOSANCIN  
Fecha de Ingreso: septiembre-2008
Ubicación: huesca
Mensajes: 298
Antigüedad: 15 años, 7 meses
Puntos: 0
Respuesta: sigue redimensionado de imagenes

Hola,
veo que al hacer var_dump($im_base) aparece en pantalla los siguiente:

resource(5) of type (gd)

¿Sabes si hay algo mas que pueda hacer?

¿Es una tonteria transformar esto a tipo string para que te deje hacer el fopen?

Te agradeceria una respuesta, llevo bastantes dias con esto y estoy ya un poco desmoralizado

Gracias y que vaya bien
  #4 (permalink)  
Antiguo 15/10/2009, 07:40
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 14 años, 11 meses
Puntos: 1517
Respuesta: sigue redimensionado de imagenes

Pues ahi tienes, estas enviando un resource, cuando debería ser una direccion en string
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 18:10.