Laneros buenas noches,
Necesito de su ayuda con ideas para resolver un problema:
Tengo un directorio con 100 imágenes.
Tengo 10 usuarios a los que se les debe mostrar a cada uno una imagen diferente.
Debo asegurarme que no muestra la misma imagen a diferentes usuarios.
Desarrollé la siguiente lógica en php, pero cuando están los 10 usuarios en simultáneo le muestra una misma imagen a dos usuarios diferentes.
1. Leo el nombre de la imagen e inserto un registro en base de datos y le pongo un estado cero 0 (significa que esta imagen no se ha mostrado)
2. Hago un Select de los nombres de las imágenes que tengan estado cero y traigo el primer registro usando limit
3. A ese registro que traje, le cambio el estado a 1 para decir que esta imagen ya se mostró
El problema es que en el paso 2, el mismo registro que obtuve se puede estar mostrando 2 veces, al primero que le mostró le pongo estado 1 y se le muestra la imagen al usuario, pero al segundo que tiene el el mismo registro vuelve y le pone estado 1 y le muestra a otro usuario.
Necesito de su ayuda con ideas para resolver un problema:
Tengo un directorio con 100 imágenes.
Tengo 10 usuarios a los que se les debe mostrar a cada uno una imagen diferente.
Debo asegurarme que no muestra la misma imagen a diferentes usuarios.
Desarrollé la siguiente lógica en php, pero cuando están los 10 usuarios en simultáneo le muestra una misma imagen a dos usuarios diferentes.
1. Leo el nombre de la imagen e inserto un registro en base de datos y le pongo un estado cero 0 (significa que esta imagen no se ha mostrado)
2. Hago un Select de los nombres de las imágenes que tengan estado cero y traigo el primer registro usando limit
3. A ese registro que traje, le cambio el estado a 1 para decir que esta imagen ya se mostró
El problema es que en el paso 2, el mismo registro que obtuve se puede estar mostrando 2 veces, al primero que le mostró le pongo estado 1 y se le muestra la imagen al usuario, pero al segundo que tiene el el mismo registro vuelve y le pone estado 1 y le muestra a otro usuario.