Subir imágenes

Hola, primero quiero agradecerte por el tiempo que me estás dedicando.
Bueno todo lo que sigue lo estoy haciendo con php y una base de datos Mysql
, estoy necesitando hacer lo siguiente. Crear un usuario con sus datos personales y 1 o más imágenes en una base de datos, entonces lo 1º que hice fue hacer un formulario con Nombre, Apellido, Imagen1, etc, luego hice una tabla en la base de datos para agregar los campos de texto, pero no se como agregar las imágenes a la base de datos.
Luego mi objetivo es buscar al usuario usando algún campo clave(ej: Apellido), y que me aparezcan sus datos, y las imágenes disponibles

2 respuestas

Respuesta
1
En una tabla debes tener los datos de los usuarios con un campo indice autonumérico ID.
En otra tabla tendrás las imágenes, con su campo indice ID_IMG, fecha, trayectoria al fichero de la imagen y un campo ID_usuario donde pondrás el número de usuario al que pertenece la foto.
Después, la búsqueda la puedes hacer sobre una consulta que utilice la clausula LEFT JOIN de MySQL que unirá las dos tablas.
Ah!, esta solución que propongo no mete las fotos en la base de datos, sino que mete el path al fichero de la imagen que se almacena en un subdirectorio especial.
Si lo que quieres es literalmente meter los datos de la foto en la base de datos, entonces la estructura de la bd es otra.
Cuéntame como lo llevas.
Muchísimas Gracias, por tu ayuda, Realmente me orientaste muchísimo...
Si me parece bien que meta el path del fichero de la imagen, ¿lo qué me falta ver es como creo dinámicamente un directorio para cada usuario en el servidor?
Para crear dianmicamente directorios, utiliza la función mkdir() de php. Puedes abrir una carpeta que sea "imagenes" y dentro de ella crear subdirectorios específicos para cada usuario utilizando por ejemplo su ID:
mkdir("imagenes/user_23");
Bueno, si tienes alguna consulta más no dudes en avisarme. Chao.
Respuesta
1
Para agregar imágenes a campos de BD suelen usarse tipos de datos binarios. Así, en MySql creo que existe el tipo Blob, que es binario. Infórmate sobre este tipo de datos, creo que te vendría muy bien.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas