Foros del Web » Programando para Internet » PHP »

ImageMagick con php y my sql

Estas en el tema de ImageMagick con php y my sql en el foro de PHP en Foros del Web. Hola a todos estoy intentando subir una imagen con determinadas dimensionesa mi base de datos me dijeron que usara imageMagick pero no tengo ni idea ...
  #1 (permalink)  
Antiguo 12/05/2006, 09:54
 
Fecha de Ingreso: septiembre-2004
Mensajes: 179
Antigüedad: 13 años, 3 meses
Puntos: 0
ImageMagick con php y my sql

Hola a todos
estoy intentando subir una imagen con determinadas dimensionesa mi base de datos me dijeron que usara imageMagick pero no tengo ni idea de como hacer esto

Alguien me puede colaborar

Gracias
  #2 (permalink)  
Antiguo 12/05/2006, 09:58
Avatar de mauled  
Fecha de Ingreso: marzo-2005
Ubicación: Cd. de México.
Mensajes: 3.001
Antigüedad: 12 años, 9 meses
Puntos: 33
De acuerdo

Lo que podrias utilizar es gd. Checa este linkhttp://www.forosdelweb.com/showthrea...101#post446101
  #3 (permalink)  
Antiguo 12/05/2006, 10:11
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Sin duda ImageMagick es mejor que "GD" para tratamiento de imagenes .. pero realmente para la mayoría de casos con "GD" suele sobrar. Por otro lado GD es más común tenerlo instalado en servicio de hosting por ejemplo que no ImageMagick (por lo menos con extensiones directas para PHP).

Si insistes en usar ImageMagick debes especificar donde quieres usarlo: Sistema Operativo del servidor, versión de PHP .. ¿el servidor es tuyo o usas un servicio de hosting?. Todo esto es importante para ver que tipo de instalación necesitas hacer. De hecho hasta la configuración de PHP que usas (y si puedes alterarla o no) influye.

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #4 (permalink)  
Antiguo 12/05/2006, 10:17
 
Fecha de Ingreso: septiembre-2004
Mensajes: 179
Antigüedad: 13 años, 3 meses
Puntos: 0
Bueno en la parte del servidor estiy utilizando el easyphp1.8 y ya descargue el imagemagick para windows que es el SO que uso la pregunta es como se funciona esto para poder cargar la imagen a la base de datos con las dimenciones que yo le de??
  #5 (permalink)  
Antiguo 12/05/2006, 10:37
Avatar de mauled  
Fecha de Ingreso: marzo-2005
Ubicación: Cd. de México.
Mensajes: 3.001
Antigüedad: 12 años, 9 meses
Puntos: 33
De acuerdo

Tambien Seria bueno saber es si cuando termines tu aplicación, la vas a "almacenar" en un hosting externo. Puesto que la gran mayoria tiene instalado las librerias de GD en vez de Imagemagick

Con respecto si puedes redimensionar las imagenes con imagemagick es posible con el comando convert

Saludillos
  #6 (permalink)  
Antiguo 12/05/2006, 10:41
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Cita:
Iniciado por marko249
Bueno en la parte del servidor estiy utilizando el easyphp1.8 y ya descargue el imagemagick para windows que es el SO que uso la pregunta es como se funciona esto para poder cargar la imagen a la base de datos con las dimenciones que yo le de??
No te refieras a que usas "esasyphp1.8" .. aquí lo que importa de verdad es las versiones exactas de PHP que uses o incluso del servidor HTTP que ese "instalador" instale. (Será Apache . .Ok, pero que versión?) ..

El tema de "cargar la imagen a la base de datos con las dimensiones que yo de" .. En principio debes aclara otro punto más:

¿que almacenas en tu BBDD de las imagenes? .. su nombre de archivo? .. la imagen en binario completa en un campo de la misma? .. De donde obtienes tu imagen original (la subes por un formulario? .. las tienes en un directorio? .. las sacas de una consulta SQL y están en binario en tu BBDD ya? .. cómo?

Por lo demás .. no sé si sabes que ImageMagick dispone de dos formas de trabajar con PHP:

1) (La más típica) ejecutar imageMagick como ejecutables que son vía funcione exec() o similares de PHP.
2) Instalando una extensión para PHP para que te queden disponibles ciertas funciones tipo imagemagick_xxxxxx() o similares para usar ImageMagick

También insisto: que motivos o por qué necesidad tienes que usar ImageMagick .. ¿Por qué no usas GD: www.php.net/gd?. El trabajo que estás desarrollando en "tu casa" .. al final lo vas a tener que usar en un servicio de hosting? (si es así .. mejor olvida usar ImageMagick .. usa GD insisto).

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #7 (permalink)  
Antiguo 12/05/2006, 11:51
 
Fecha de Ingreso: septiembre-2004
Mensajes: 179
Antigüedad: 13 años, 3 meses
Puntos: 0
bueno en cuanto alas versiones esta asi:
el Php es 4.3.10
el Apache es 1.3.33
el Mysql es 4.1.9
el ImageMagick es ImageMagick-5.5.7-Q8

en cuanto alo de dar las dimenciones me refiero a tomar una imagen por medio de un formulario y
subirla como binario pero no con las dimensiones originales de la imagen sino con las dimenciones que yo necesite
me explico

tengo una imagen de 512*342(tamaño original de la imagen)
y las dimenciones que en la que la quiero es 200*100

la forma como actualmente cartgo la imagena la base de datos es:


if ($txt_archivo != "")
{
$archivo = $_FILES["txt_archivo"]["name"];
$size = $_FILES["txt_archivo"]["size"];
$type = $_FILES["txt_archivo"]["type"];
$uploadFile =$_FILES["txt_archivo"]["name"];// iva antes de el archivo $uploadDir.
$fileHandle = fopen($txt_archivo, "r");
$fileContent = fread($fileHandle, $size);
$fileContent = addslashes($fileContent);

despues de esto cargo la imagen en la base de datos asi:
"insert into banner(ContenidoImagen,NombreImagen,TipoImagen,Tam anoImagen)"."values('$fileContent','$archivo','$ty pe','$size')

lo que creo que necesito modificar es el $fileContent que es donde se carga el contenido de la imagen y es aqui donde

creo que se utiliza el imagemagick pero no se como usarlo

le agradeceria si me diera un pequeño ejemplo de como podria ser
  #8 (permalink)  
Antiguo 12/05/2006, 12:04
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Perdona que sea pesado .. ¿pero me podrías explicar por qué necesitas usar ImageMagick y no usas GD (que es lo típico y lo más standar en combinación con PHP)?

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #9 (permalink)  
Antiguo 12/05/2006, 12:10
 
Fecha de Ingreso: septiembre-2004
Mensajes: 179
Antigüedad: 13 años, 3 meses
Puntos: 0
Exclamación

el por que necesito utilizar el imagemagick es por que en este momento lo uso local pero despues tengo que subirlo a un servidor con condiciones parecidas al mio pero que tiene el imagemagick en uso y es el requerimiento qu me piden
  #10 (permalink)  
Antiguo 12/05/2006, 12:44
Avatar de juaniquillo
Colaborador
 
Fecha de Ingreso: noviembre-2005
Ubicación: San Juan, Puerto Rico
Mensajes: 5.745
Antigüedad: 12 años
Puntos: 281
aprovecho este mensaje porque tengo una pregunta parecida. Estoy usando el sistema que dejo mauled, osea, el del FAQ que usa GD y no puedo hacer que funciona. Uso Windows XP (SP2), PHP 5.0.5 y Apache 2.0.55. No me da error ni nada, solo aparece la pagina en blanco. Uso la funcion de arriba y este codigo:
Código PHP:
if(!thumbnail("./imagenes/url-96.jpg","./imagenes/Thumbs")){
    echo 
"error en creacion de thumbnails";
}else{
    echo 
"Creacion exitosa";

ya le he quitado el ; al GD en el PHP.ini y hasta cambien el directorio de las extensiones pero no funciona. Tengo que hacer algo mas?
  #11 (permalink)  
Antiguo 12/05/2006, 13:07
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Cita:
Iniciado por marko249
el por que necesito utilizar el imagemagick es por que en este momento lo uso local pero despues tengo que subirlo a un servidor con condiciones parecidas al mio pero que tiene el imagemagick en uso y es el requerimiento qu me piden
Ok, .. pero .. como te han indicado los Srs. de tu servicio de hosting como debes usar ImageMagick? .. Es decir, tu sabes si usan una extensión para PHP (verificalo haciendo un phpinfo()) o lo debes acceder directo por un "exec()" o un "system()" por ejemplo (www.php.net/exec).

Si quieres reproducir las mismas condiciones en tu "PC" de tu "casa" vs a lo que tienes en tu servidor .. lo primero que debes hacer es verificar como vas a poder trabajar con ImageMagick en el destino definitivo de tu aplicación.

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #12 (permalink)  
Antiguo 12/05/2006, 13:09
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Cita:
Iniciado por juaniquillo
aprovecho este mensaje porque tengo una pregunta parecida. Estoy usando el sistema que dejo mauled, osea, el del FAQ que usa GD y no puedo hacer que funciona. Uso Windows XP (SP2), PHP 5.0.5 y Apache 2.0.55. No me da error ni nada, solo aparece la pagina en blanco. Uso la funcion de arriba y este codigo:
Código PHP:
if(!thumbnail("./imagenes/url-96.jpg","./imagenes/Thumbs")){
    echo 
"error en creacion de thumbnails";
}else{
    echo 
"Creacion exitosa";

ya le he quitado el ; al GD en el PHP.ini y hasta cambien el directorio de las extensiones pero no funciona. Tengo que hacer algo mas?
Por favor .. haz tu pregunta en un tema nuevo .. y haz referencia a la sugerencia de la FAQ mancionada si lo requieres. (aquí se pretende instalar ImageMagick, con los comentarios sobre GD que no es el caso para el usuario que plateó la pregunta).

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #13 (permalink)  
Antiguo 12/05/2006, 13:58
 
Fecha de Ingreso: septiembre-2004
Mensajes: 179
Antigüedad: 13 años, 3 meses
Puntos: 0
Lo que sse es que debe acceder directo por un System()

Gracias
  #14 (permalink)  
Antiguo 12/05/2006, 16:51
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Ok, .. entonces:

Podrías usar esta excelente classe para tratamiento de imagenes. Puede usar GD o Imagemagick para el proceso en sí de las imagenes:

phpThumb()
http://phpthumb.sourceforge.net/

Otras classes (a modo de tutorial también):
http://www.evolt.org/article/PHP_fro...gick/17/55650/
http://www.bokko.nl/index.php?button=2#item4

En realidad veras muchooooooooos ejemplos y documentación si usas google:
php imagemagick class.

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #15 (permalink)  
Antiguo 12/05/2006, 16:53
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Por cierto .. lo que debes buscar en esas classes son métodos para trabajar la imagen como un "string" (toma nota). Es decir .. que puedan hacer un proceso desde un "string" (y no desde un archivo en sí) y que su resultado lo hagan así mismo a un string si es posible directamente y no hacia un archivo (aunque para esto habría solución usando el buffer de salida de PHP: ob_start() y funciones afines para capturar la salida de esas funciones).

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
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 19:10.