Mostrar imagen en MySQL

199 views
Skip to first unread message

Enrique

unread,
Apr 16, 2024, 5:22:23 PM4/16/24
to Comunidad de Visual Foxpro en Español

Estoy probando un formulario VFP para mostrar fotos en MySQL.

Probé guardando las imágenes directamente en la tabla y funciona correctamente, pero encuentro que se enlentece la entrada al formulario y la tabla de prueba no tiene más de 20 registros.

Antiguamente, guardaba solo la ruta de la foto en un campo de la tabla en el servidor, de esta manera:  \\192.168.4.133\CGR\IMAGENES\CHICUALLANTE.PNG y funcionaba.

El tema es que ahora la base de datos estará en un Hosting y tengo una carpeta donde alojo las imágenes. Mi pregunta es, ¿puedo almacenar las imágenes guardando la ruta solamente y luego poder visualizarlas o bien debo seguir guardando las fotos en un campo mediumtext de la tabla Mysql. "Quizás me estoy equivocando en direccionar bien la ruta de la foto en el Hosting". La siguiente imagen es la tabla de prueba:

foto.jpg

De poder guardar la ruta, está la debiera almacenar así, creo;

 \\168.194.197.2\public_html\Lector1\assets\fotos\ines.jpg (primer registro de la tabla de la imagen, las demás las puedo visualizar, ya que están en mi disco duro)

Pero no logro visualizar el primer registro.

Donde 168.194.197.2 es IP del servidor.

La idea es que el sistema pueda visualizar las imágenes desde cualquier lugar.

Muchas gracias quien me pueda orientar.

Esteban Herrero

unread,
Apr 16, 2024, 5:39:03 PM4/16/24
to publice...@googlegroups.com

Hola Enrique.

El guardar las imágenes en una carpeta o tenerlas en la DB Sql en un campo Blob son opciones válidas. En mi caso utiliza una segunda DB p guardar las imágenes, x ejemplo tengo una DB comprobantes donde guardo los PDF de las facturas/comprobantes q se hacen. El tema de vincularlas en una carpeta tb se puede, el tema es q x alguna razón alguien borre alguna imagen de la carpeta y ese vínculo queda trunco.

Lo q no me gusta es tener en una misma DB datos + imágenes (hablando de SQL).

Saludos

--
Blog de la Comunidad Visual FoxPro en Español http://comunidadvfp.blogspot.com
---
Has recibido este mensaje porque estás suscrito al grupo "Comunidad de Visual Foxpro en Español" de Grupos de Google.
Para cancelar la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a publicesvfoxp...@googlegroups.com.
Para ver esta conversación en el sitio web, visita https://groups.google.com/d/msgid/publicesvfoxpro/1f8cf3bd-dc90-4e23-a467-353b85210e59n%40googlegroups.com.

Enrique

unread,
Apr 16, 2024, 5:49:54 PM4/16/24
to Comunidad de Visual Foxpro en Español

Muchas Gracias Esteban por tu tiempo y respuesta. El tema es que no sé cómo hacer lo que indicas o como vincularlas. Tienes un ejemplo.

saludos cordiales.

Alfonso Ramirez Diaz

unread,
Apr 17, 2024, 4:07:34 PM4/17/24
to Comunidad de Visual Foxpro en Español
Hola

Yo utilizo lo siguiente para guardar la imagen o cualquier archivo en un campo LONGTEXT de MYSQL

m.texto = FILETOSTR(m.archivo)
m.texto = STRCONV(m.texto,13)
SQLEXEC(lnhandle,"UPDATE imagenes SET texto=?m.texto WHERE condicion")
RELEASE m.texto

Para recuperar nuevamente la imagen o el archivo uso:

SQLEXEC(lnhandle,"SELECT texto FROM imagenes WHERE condicion","imagenes")
m.texto = STRCONV(m.texto,14)
STRTOFILE(m.texto,m.archivo)
RELEASE m.texto

Esto me funciona con cualquier motor (MySQL, SQL Server, PostgreSQL) solo hay que tener en cuanto que el tipo de campo sea un LONGTEXT o equivalente.

Saludos
AERD
Message has been deleted

Enrique

unread,
Apr 18, 2024, 11:21:20 AM4/18/24
to Comunidad de Visual Foxpro en Español

Muchas gracias por sus respuestas. ¿Al poner las imágenes en la tabla, no enlentece el sistema?

Toda vez que antiguamente almacenaba las rutas en la tabla.

Saludos cordiales.

almonts ( www.ontariombd.es )

unread,
Apr 18, 2024, 6:12:28 PM4/18/24
to Comunidad de Visual Foxpro en Español
Te adjunto un enlace de un artículo sobre este tema, que en su día se publicó en portalfox.
Espero que aporte.

Reply all
Reply to author
Forward
0 new messages