FAQ
Buenas!!!, estoy armando un site que permite subir archivos JPG y tengo problemas al subir archivos de mas de 1 MB, queria saber si ustedes conocen alguna funcion en PHP para bajar o "comprimir" ese archivo a la mitad, que me quede aproximadamente en 500 KB.

He visto las funciones para las imagenes que hay en el site de PHP.net pero la verdad no se para donde arrancar porque no encuentro alguna funcion que haga eso.

Agradeceria la ayuda que me puedan dar.

Saludos.

Search Discussions

  • Julio Herrera - Chilered.com at Mar 25, 2008 at 1:05 pm
    Ezequiel:

    Las funciones que te permiten comprimir a zip un archivo se realizan con el
    archivo ya puesto en el servidor, por lo tanto debes solucionar primero que
    puedas subir archivos de 1 mega, yo creo que puede ser alguna restriccion
    del servidor, pregunta si te lo pueden cambiar.

    Saludos


    Julio Herrera
    Chilered.com
    -----Mensaje original-----
    De: Ezequiel Suarez
    Enviado el: Martes, 25 de Marzo de 2008 09:30 a.m.
    Para: php-es@lists.php.net
    Asunto: [PHP-ES] Bajar tamaño de archivo JPG



    Buenas!!!, estoy armando un site que permite subir archivos JPG y tengo
    problemas al subir archivos de mas de 1 MB, queria saber si ustedes conocen
    alguna funcion en PHP para bajar o "comprimir" ese archivo a la mitad, que
    me quede aproximadamente en 500 KB.

    He visto las funciones para las imagenes que hay en el site de PHP.net pero
    la verdad no se para donde arrancar porque no encuentro alguna funcion que
    haga eso.

    Agradeceria la ayuda que me puedan dar.

    Saludos.
  • SkuNk at Mar 25, 2008 at 1:51 pm
    Además Ezequiel, ten en cuenta que un archivo JPG ya está comprimido, y que
    intentar comprimirlo más aún es algo bastante difícil, como mucho perderas
    algunos bytes pero jamás podrás reducirlo a la mitad sin hacerle una
    redimensión en píxeles.

    --
    Atentamente,
    Philipp Keweloh

    2008/3/25, Julio Herrera - Chilered.com <jherrera@chilered.com>:
    Ezequiel:

    Las funciones que te permiten comprimir a zip un archivo se realizan con
    el
    archivo ya puesto en el servidor, por lo tanto debes solucionar primero
    que
    puedas subir archivos de 1 mega, yo creo que puede ser alguna restriccion
    del servidor, pregunta si te lo pueden cambiar.

    Saludos


    Julio Herrera
    Chilered.com
    -----Mensaje original-----
    De: Ezequiel Suarez
    Enviado el: Martes, 25 de Marzo de 2008 09:30 a.m.
    Para: php-es@lists.php.net
    Asunto: [PHP-ES] Bajar tamaño de archivo JPG




    Buenas!!!, estoy armando un site que permite subir archivos JPG y tengo
    problemas al subir archivos de mas de 1 MB, queria saber si ustedes
    conocen
    alguna funcion en PHP para bajar o "comprimir" ese archivo a la mitad, que
    me quede aproximadamente en 500 KB.

    He visto las funciones para las imagenes que hay en el site de PHP.netpero
    la verdad no se para donde arrancar porque no encuentro alguna funcion que
    haga eso.

    Agradeceria la ayuda que me puedan dar.

    Saludos.




    --
    PHP Spanish Localization Talk Mailing List (http://www.php.net/)
    To unsubscribe, visit: http://www.php.net/unsub.php
  • Gerardo Benitez at Mar 25, 2008 at 2:11 pm
    Hola Ezequiel!

    Estimo que los problemas que vos tenes para subir archivos de más de un 1mb,
    es por una restricción del lado de la configuración de php, donde debes
    tener un límite cercano al mb para hacer uploads de archivos, eso por un
    lado, por otro lado, puede pasar tambien que la función de upload tome más
    tiempo que el que tenes asigando para ejecutar el script, o sea muere el
    script por time out.

    Para cambiar el límite de los archivos de upload, tenes que setear un límite
    más alto, a conciencia, lo podes hacer con
    *ini_set* ( "*upload_max_filesize*" , "3M" ) ; //ahora el limite es 3mb

    Para cambiar el tiempo de ejecución del script, podes setear al inicio de tu
    script
    *ini_set* ( "*max_execution_time*" , "30" ) ; //30 segundos es el limite
    por defecto

    Como te comenta en otras respuestas, para reducir el tamaño de un archivo,
    primero tenes que tenerlo subido en el servidor, al menos con php.


    Espero haberte ayudado.

    2008/3/25 Ezequiel Suarez <esuarez@laanonima.com.ar>:

    Buenas!!!, estoy armando un site que permite subir archivos JPG y tengo
    problemas al subir archivos de mas de 1 MB, queria saber si ustedes conocen
    alguna funcion en PHP para bajar o "comprimir" ese archivo a la mitad, que
    me quede aproximadamente en 500 KB.

    He visto las funciones para las imagenes que hay en el site de PHP.netpero la verdad no se para donde arrancar porque no encuentro alguna funcion
    que haga eso.

    Agradeceria la ayuda que me puedan dar.

    Saludos.

    --
    Gerardo Benitez
  • Ezequiel Suarez at Mar 25, 2008 at 2:18 pm
    No en realidad el problema esta cuando intento visualizar varias imagenes, que al tener mas de 1 mb hace que tarde una eternidad en mostrar todas, esa configuracion la tengo correcta, pero la idea es bajar el tamaño del archivo para que se pueda mostrar sin tanto delay en la pagina.

    SAludos.


    ----- Original Message -----
    From: "Gerardo Benitez" <gerardobenitez@gmail.com>
    To: "Ezequiel Suarez" <esuarez@laanonima.com.ar>
    Cc: php-es@lists.php.net
    Sent: Tuesday, March 25, 2008 12:11:50 PM (GMT-0200) Atlantic/South_Georgia
    Subject: Re: [PHP-ES] Bajar tamaño de archivo JPG

    Hola Ezequiel!

    Estimo que los problemas que vos tenes para subir archivos de más de un 1mb, es por una restricción del lado de la configuración de php, donde debes tener un límite cercano al mb para hacer uploads de archivos, eso por un lado, por otro lado, puede pasar tambien que la función de upload tome más tiempo que el que tenes asigando para ejecutar el script, o sea muere el script por time out.

    Para cambiar el límite de los archivos de upload, tenes que setear un límite más alto, a conciencia, lo podes hacer con
    ini_set ( " upload_max_filesize " , "3M" ) ;  //ahora el limite es 3mb

    Para cambiar el tiempo de ejecución del script, podes setear al inicio de tu script
    ini_set ( " max_execution_time " , "30" ) ;  //30 segundos es el limite por defecto

    Como te comenta en otras respuestas, para reducir el tamaño de un archivo, primero tenes que tenerlo subido en el servidor, al menos con php.


    Espero haberte ayudado.


    2008/3/25 Ezequiel Suarez < esuarez@laanonima.com.ar >:




    Buenas!!!, estoy armando un site que permite subir archivos JPG y tengo problemas al subir archivos de mas de 1 MB, queria saber si ustedes conocen alguna funcion en PHP para bajar o "comprimir" ese archivo a la mitad, que me quede aproximadamente en 500 KB.

    He visto las funciones para las imagenes que hay en el site de PHP.net pero la verdad no se para donde arrancar porque no encuentro alguna funcion que haga eso.

    Agradeceria la ayuda que me puedan dar.

    Saludos.




    --
    Gerardo Benitez


    --
    Ezequiel Suarez
  • Julio Herrera - Chilered.com at Mar 25, 2008 at 2:28 pm
    Ezequiel:

    Esto fue lo que tu escribiste:

    Buenas!!!, estoy armando un site que permite subir archivos JPG y tengo
    problemas al subir archivos de mas de 1 MB

    Repito, esto fue lo que tu escribiste:

    tengo problemas al subir archivos de mas de 1 MB

    Nos puedes alcarar cual entonces es el problema

    Julio Herrera
    Chilered.com

    -----Mensaje original-----
    De: Ezequiel Suarez
    Enviado el: Martes, 25 de Marzo de 2008 11:18 a.m.
    Para: Gerardo Benitez
    CC: php-es@lists.php.net
    Asunto: Re: [PHP-ES] Bajar tamaño de archivo JPG



    No en realidad el problema esta cuando intento visualizar varias imagenes,
    que al tener mas de 1 mb hace que tarde una eternidad en mostrar todas, esa
    configuracion la tengo correcta, pero la idea es bajar el tamaño del archivo
    para que se pueda mostrar sin tanto delay en la pagina.

    SAludos.


    ----- Original Message -----
    From: "Gerardo Benitez" <gerardobenitez@gmail.com>
    To: "Ezequiel Suarez" <esuarez@laanonima.com.ar>
    Cc: php-es@lists.php.net
    Sent: Tuesday, March 25, 2008 12:11:50 PM (GMT-0200) Atlantic/South_Georgia
    Subject: Re: [PHP-ES] Bajar tamaño de archivo JPG

    Hola Ezequiel!

    Estimo que los problemas que vos tenes para subir archivos de más de un 1mb,
    es por una restricción del lado de la configuración de php, donde debes
    tener un límite cercano al mb para hacer uploads de archivos, eso por un
    lado, por otro lado, puede pasar tambien que la función de upload tome más
    tiempo que el que tenes asigando para ejecutar el script, o sea muere el
    script por time out.

    Para cambiar el límite de los archivos de upload, tenes que setear un límite
    más alto, a conciencia, lo podes hacer con ini_set ( " upload_max_filesize "
    , "3M" ) ;  //ahora el limite es 3mb

    Para cambiar el tiempo de ejecución del script, podes setear al inicio de tu
    script ini_set ( " max_execution_time " , "30" ) ;  //30 segundos es el
    limite por defecto

    Como te comenta en otras respuestas, para reducir el tamaño de un archivo,
    primero tenes que tenerlo subido en el servidor, al menos con php.


    Espero haberte ayudado.


    2008/3/25 Ezequiel Suarez < esuarez@laanonima.com.ar >:




    Buenas!!!, estoy armando un site que permite subir archivos JPG y tengo
    problemas al subir archivos de mas de 1 MB, queria saber si ustedes conocen
    alguna funcion en PHP para bajar o "comprimir" ese archivo a la mitad, que
    me quede aproximadamente en 500 KB.

    He visto las funciones para las imagenes que hay en el site de PHP.net pero
    la verdad no se para donde arrancar porque no encuentro alguna funcion que
    haga eso.

    Agradeceria la ayuda que me puedan dar.

    Saludos.




    --
    Gerardo Benitez


    --
    Ezequiel Suarez
  • Gustavo Pardo at Mar 25, 2008 at 2:29 pm

    El mar, 25-03-2008 a las 11:18 -0300, Ezequiel Suarez escribió:

    No en realidad el problema esta cuando intento visualizar varias imagenes, que al tener mas de 1 mb hace que tarde una eternidad en mostrar todas, esa configuracion la tengo correcta, pero la idea es bajar el tamaño del archivo para que se pueda mostrar sin tanto delay en la pagina.
    ahh... entonces sí que suben. si intentas mostrar varias imagenes de más
    de 1mb se me hace que deberías redimensionarlas (tipo thumbnail) primero
    y luego mostrar la que solicitan en su tamaño original.

    un thumbnail (~100x100), por pesado que sea no creo que ocupe más de 20
    ó 30kb, eso agilizaría tu página.

    saludos.
    --
    Gustavo Pardo
    Dataneu Argentina
    Software & Web Hosting
    Mail: gustavo.pardo@dataneu.com
    Web: http://dataneu.com/
    Tel.(+54 299) 489 6880
    Centenario, NQN - Argentina
  • Lazaro Rogel Aguirre at Mar 25, 2008 at 3:20 pm
    Hola Ezequiel, te mando una función (estaba en la red) que sirve para generar thumbnails de 150x150, pero se pueden cambiar esos valores; un archivo de 1.6 MB lo reduce hasta 6 KB.
    Esta función tiene 2 detalles, 1) La altura tiene que ser menor que el ancho; 2) Todas las imagenes de las que se va a generar un thumbnail, tienen que estar en una sola carpeta.

    Ya dependera de ti si la utilizas tal cual o la adaptas a tus necesidades.

    Como no te voy a querer si mi corazón azul es y mi piel dorada... siempre te querré...!!!!!> From: dataneu@gmail.com> To: php-es@lists.php.net> Date: Tue, 25 Mar 2008 11:27:45 -0300> Subject: Re: [PHP-ES] Bajar tamaño de archivo JPG> > El mar, 25-03-2008 a las 11:18 -0300, Suarez escribió:> > > > No en realidad el problema esta cuando intento visualizar varias imagenes, que al tener mas de 1 mb hace que tarde una eternidad en mostrar todas, esa configuracion la tengo correcta, pero la idea es bajar el tamaño del archivo para que se pueda mostrar sin tanto delay en la pagina. > > ahh... entonces sí que suben. si intentas mostrar varias imagenes de más> de 1mb se me hace que deberías redimensionarlas (tipo thumbnail) primero> y luego mostrar la que solicitan en su tamaño original.> > un thumbnail (~100x100), por pesado que sea no creo que ocupe más de 20> ó 30kb, eso agilizaría tu página.> > saludos.> -- > Gustavo Pardo > Dataneu Argentina > Software & Web Hosting > Mail: gustavo.pardo@dataneu.com > Web: http://dataneu.com/ > Tel.(+54 299) 489 6880 > Centenario, NQN - Argentina> > > -- > PHP Spanish Localization Talk Mailing List (http://www.php.net/)> To unsubscribe, visit: http://www.php.net/unsub.php>
    _________________________________________________________________
    Por ser usuario de Hotmail, ya tienes un Space ¡Aprovéchalo!
    http://home.services.spaces.live.com/
  • Jidn jidn at Mar 28, 2008 at 6:10 pm
    Hola Ezequiel,
    Si lo que realmente necesitas es redimensionar una imagen para bajar elpeso de la misma, esto lo podes hacer muy facilmente con algunasfunciones de imagen

    $tamanio_img = getimagesize($filename); //Con esta funcion obtenes unarray con bastante informacion, pero la mas importante es lasdimensiones de la imagen en pixeles
    $img = imagecreatefromjpeg($filename); //Construis el thumbnail para tu imagen
    $imagen = imagecreatetruecolor($width,$height); //Creas otro thumbnail para alojar la imagen redimensionada
    /*
    * $width = Es el ancho que queres que tenga la imagen destino
    * $heigth = Es el alto que queres que tenga la imagen destino
    * $tamanio_img[0] = Ancho original de la imagen
    * $tamanio_img[1] = Alto original de la imagen
    */
    imagecopyresampled($imagen,$img,0,0,0,0,$width,$height,$tamanio_img[0],$tamanio_img[1]);//redimensionas la imagen original y la guardas el el thumbnail destino
    imagejpeg($imagen,$dst_filename); //bajas la imagen redimensionada a disco
    imagedestroy($imagen); //destruye el thumbnail

    Esto funcionaria muy bien siempre que las dimensiones de la imagen seanigual (ej 150x150). Si no son iguales te va a deformar la imagen.
    Por lo tanto deberias agregar alguna logica anterior para primero llevar la imagen original a dimensiones iguales.
    En ese caso tenes 2 opciones posibles:
    1) Elegir el tamaño mas grande y rellenar con bordes
    2) Elegir el borde mas chico y cortar la imagen

    Espero poder haberte ayudado
    Saludos
    Pablo



    Tarjeta de crédito Yahoo! de Banco Supervielle.
    Solicitá tu nueva Tarjeta de crédito. De tu PC directo a tu casa. www.tuprimeratarjeta.com.ar

Related Discussions

Discussion Navigation
viewthread | post
Discussion Overview
groupphp-general-es @
categoriesphp
postedMar 25, '08 at 12:30p
activeMar 28, '08 at 6:10p
posts9
users7
websitephp.net

People

Translate

site design / logo © 2022 Grokbase