Foros del Web » Programando para Internet » PHP »

Problema con ImageCreateFromJPEG

Estas en el tema de Problema con ImageCreateFromJPEG en el foro de PHP en Foros del Web. Hola, tengo un problema con la función ImageCreateFromJPEG. Mi intención es dejar subir fotos a mi web de cualquier tamaño y en el servidor reducirlas ...
  #1 (permalink)  
Antiguo 23/10/2010, 09:32
 
Fecha de Ingreso: mayo-2010
Mensajes: 60
Antigüedad: 14 años, 5 meses
Puntos: 1
Problema con ImageCreateFromJPEG

Hola, tengo un problema con la función ImageCreateFromJPEG. Mi intención es dejar subir fotos a mi web de cualquier tamaño y en el servidor reducirlas con un script.

Haciendo pruebas en local me funciona bien, pero resulta que ahora al hacerlas en el servidor real han empezado los problemas.
En el servidor sólo me funciona bien con fotos pequeñas (hasta 400 Kb aprox).

Comparando la configuración de los dos servidores he visto que en local tengo el memory_limit a 120M y en el remoto 40M. Por tanto he supuesto que el problema es de memoria.
He intentado solucionarlo poniendo antees del ImageCreateFromJPEG la instrucción:

ini_set('memory_limit', '120M');

Pero nada, no hay manera, la misma foto de 1,3 megas que me funciona en local no va en remoto. He probado a poner en el ini_set 200...300 nada no tira.

¿La función ini_set se tiene que poner en algún sitio en concreto? La he puesto poco antes del imageCreate y también he probado a ponerla como primera instrucción y nada.


También he visto que en el servidor remoto el max_input_time está a -1 ¿eso quiere decir que es "infinito"?

Además mirando foros he visto que alguien recomendaba poner:

ini_set('gd.jpeg_ignore_warning', 1)

Pero sigue sin funcionarme.

¿alguna idea?

Gracias!
  #2 (permalink)  
Antiguo 23/10/2010, 13:33
Avatar de gogupe  
Fecha de Ingreso: octubre-2006
Ubicación: Mallorca
Mensajes: 897
Antigüedad: 18 años, 1 mes
Puntos: 32
Respuesta: Problema con ImageCreateFromJPEG

Hola Washby, me temo que la culpa es de tu proveedor del dominio.

La configuración donde tienes alojada la página no te permites alojar más memoria, aun poniendo el memory_limit.

Saludos
  #3 (permalink)  
Antiguo 24/10/2010, 13:17
 
Fecha de Ingreso: mayo-2010
Mensajes: 60
Antigüedad: 14 años, 5 meses
Puntos: 1
Respuesta: Problema con ImageCreateFromJPEG

Gracias por la respuesta gogupe. Yo también estaba sospechando que no mi proveedor me tendría capado el memory init pero acabo de probar el siguiente código:

Cita:
<?php
ini_set('memory_limit', '120M');
phpinfo(); ?>
Y el memory limit me ha cambiado correctamente a 120M por lo que supongo que sí me habrá funcionado ¿no?. Ahora sí que no entiendo nada.


Cuando no me funciona el imagecreatefromjpeg el script se acaba de golpe, ¿hay alguna manera de poder controlar el error?.


Gracias!
Saludos!
  #4 (permalink)  
Antiguo 24/10/2010, 13:26
Avatar de portalmana  
Fecha de Ingreso: septiembre-2007
Ubicación: Montevideo-Uruguay
Mensajes: 633
Antigüedad: 17 años, 1 mes
Puntos: 80
Respuesta: Problema con ImageCreateFromJPEG

Para saber la memoria que esta ocupando un script tenemos memory_get_usage() , esto te pude servir para ver hasta que tamaño de imágenes podrías subir y editar sin problemas.
__________________
"La imaginación es más importante que el conocimiento. El conocimiento es limitado, mientras que la imaginación no" -- A.Einstein
objetivophp.com,twitter.com/objetivophp
  #5 (permalink)  
Antiguo 25/10/2010, 04:27
 
Fecha de Ingreso: mayo-2010
Mensajes: 60
Antigüedad: 14 años, 5 meses
Puntos: 1
Respuesta: Problema con ImageCreateFromJPEG

Cita:
Iniciado por portalmana Ver Mensaje
Para saber la memoria que esta ocupando un script tenemos [URL="http://www.php.net/manual/es/function.memory-get-usage.php"]memory_get_usage()[/URL] , esto te pude servir para ver hasta que tamaño de imágenes podrías subir y editar sin problemas.
Gracias por tu respuesta portalmana.
Ya he probado lo del memory_get_usage y por lo que he visto en el manual me parece que indica la memoria usada en el script actual, no indica la máxima que puedo obtener.

Me parece que el problema es que realmente el iniset realmente no funciona correctamente seguramente porque estará capado por el proveedor. Ahora he probado el siguiente código:

Código PHP:
Ver original
  1. <?php
  2. ini_set('memory_limit', '200M');
  3. echo Get_CFG_Var('memory_limit');
  4. phpinfo(); ?>

Y me sale

40M (el valor por defecto previo, o sea como si el iniset no hubiera hecho nada)
Y después en la información del phpinfo sale el memory limit a 200 como si hubiera funcionado el memory limit.

Por tanto supongo que el valor real será el de 40M porque sino no tendría el error.

argggg
  #6 (permalink)  
Antiguo 25/10/2010, 14:46
Avatar de portalmana  
Fecha de Ingreso: septiembre-2007
Ubicación: Montevideo-Uruguay
Mensajes: 633
Antigüedad: 17 años, 1 mes
Puntos: 80
Respuesta: Problema con ImageCreateFromJPEG

Efectivamente es la consumida por el script, yo era para que pruebes que tanto llega a ocupar el script...

Si quieres la asignada en php es ini_get('memory_limit')


Saludos
__________________
"La imaginación es más importante que el conocimiento. El conocimiento es limitado, mientras que la imaginación no" -- A.Einstein
objetivophp.com,twitter.com/objetivophp

Etiquetas: Ninguno
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 12:16.