Ver Mensaje Individual
  #2 (permalink)  
Antiguo 25/10/2006, 10:29
Cluster
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Cita:
estaba pensando que mediante el formulario subieran las imagenes a una carpeta del servidor y a la vez se guarde en base de datos la ruta de la imagen .. luego al colocarlo en la pagina dimensionaria la imagen?

cual seria la forma de administrar mejor esto hacer una carpeta por cada persona que suba una imagen?
Si vas a gestionar tus archivos sobre una BBDD .. el tema "físico" de como queden tus imagenes en el servidor ya es lo de menos .. De hecho debes "confiar" y acceder a tus archivos desde tu aplicación que gestiona tu BBDD donde tu le das propiedades y las obtienes/gestionas por ese médio ..

Yo en estos casos sólo creo un directorio y ahí dejo todas las imagenes .. Las referencias de "a quien le pertenece" ya las hago en la Base de datos. No me "desgasto" configurando directorios y demás en el "servidor" .. es decir, replicando nuevamente una estructura de datos que ya hago sobre el "modelo de datos" de la BBDD que implementé.

Temas no tan "menores" como de duplicidad de archivos de nombre de un usuario vs otro .. los solvento incrustrando un prefijo aleatorio al nombre del archivo (un mktime() por ejemplo o el ID del registro creado ... y viendo que no exista .. ).

Cita:
como recojo en la pagina php la ruta de la imagen guardada en mysql para que me muestre la imagen?
Realmente con la propuesta que te hago . .tu sólo en tu BBDD vas a guardar el nombre de la imagen (el real que le des con el ID/time() como prefijo que le puedas dar para evitar confusiones ..).

La ruta absoluta hacia tu archivo la indicas como "prefijo" en tu tag de visualización de la imagen HTML tipo:

<img src="imagenes/<? echo $row['imagen_nombre'] ?>">

Esto sería una de las soluciones más simples pero no seguras.

Puedes con PHP leer tu imagen del sistema de archivos y entregarla al buffer de salida de PHP por médio de cabeceras HTTP (enviadas con header()) y ayuda de readfile() (Hay FAQ's que aplican estas funciones .. ).

El único problema que tendrías con este tipo de sistemas es sobre la "privacidad" de los archivos entre usuarios .. Deberías crear una referencia aleatoria (en este caso ya un simple "time()" no te serviría ..) para llamar a tus imagenes y así un usuario común no "pruebe" a poner identificadores secuenciales (como los típios "ID=n° que es autonumérico"):

De esta forma nos referenciamos tipo:
ver_imagen.php?ref=hyi78689

En lugar de algo tipo:
ver_imagen.php?id=1

y así probar a ver si está la "ver_imagen.php?id=2" de nuestro "vecino".

De hecho .. esta misma "referencia" de código aleatorio y único podrias usarla como pre-fijo para el nombre del archivo físico que tenga que tener el archivo para poder gestinar todos los archivos sobre un mismo directorio.

Mi propuesta de "un sólo directorio" sólo la justifico por:
1) Nunca voy a recorrer todo ese directorio en busca de algún archivo (con algún bucle .. a lo sumo un "file_exists()" o algo así para verificar que no exista el archivo).
2) Voy acceder al archivo en forma directa (sabré su nombre por consulta SQL de mi BBDD que me lo entregue).

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.