Problema:
Tenemos X usuarios que tienen unas carpetas específicas cuyo nombre está codificado en SHA y MD5, cada carpeta es única y dentro de ella pueden haber más directorios (hasta 5).
Se declararon dos ideas de solución:
Solución A:
Guardar en BD el usuario, carpeta y URL de cada archivo almacenado, relacionándolo con el usuario.
De esta forma se evita que otros usuarios accedan por URL a un directorio ajeno y descarguen o adquieran los archivos del otro usuario sin permiso.
Solución B:
Partimos de la base de que cada carpeta es única e intransferible.
Crear un script para que recorra la carpeta que coincida con el código de seguridad aplicado (SHA y MD5 de un HASH por usuario), devolver al usuario todos los directorios y archivos de esa carpeta madre.
Después de mucho debatir, no llegamos a ningún lado..... básicamente porque cada archivo ha de pasar un control se seguridad que estará almacenado en la BD.
Por ejemplo:
Archivo público = INT (0/1)
Fecha de Caducidad = DATETIME
Por este último dato yo escogí la Opción A, sin embargo mis muchachos me dijeron la siguiente cita:
Cita:
Pero.... hasta que punto PHP es más rápido que MYSQLi? Hablamos de tiempo real a ojo humano (segundos, minutos)? o tiempo de proceso a nivel máquina(Microsec)?PHP Es más rápido leyendo directorios y subdirectorios que mysqli haciendo una consulta a BD de los archivos que tenga almacenados un usuario en una carpeta.
Un saludo.