Tengo una galería de fotos. Quiero agregar el botón "Agregar a Favoritos" para que el usuario pueda agregar a otros usuarios a sus favoritos. Y luego quiero que cada usuario pueda ver su lista de usuarios favoritos, así como también poder ver quién (lista de usuarios) agregó este usuario a favoritos.mejor manera de almacenar los "favoritos" del usuario en MySQL
He encontrado dos maneras, y la primera es:
faver_id faved_id
1 10
1 31
1 24
10 1
10 24
no me gusta este método debido a 1) una gran cantidad de repetir 2) mesa muy grande en el futuro (si es un tener al menos 1001 usuarios , y a cada uno le gustan otros 1000 usuarios = 1 001 000 registros) lo cual supongo que ralentizará mi base.
La segunda forma es:
user_id favs
1 1 23 34 56 87 23
10 45 32 67 54 34 88 101
puedo tomar estos favoritos y explotar() en php o buscar si el usuario le gusta algún otro usuario por MySQL consulta select count(user_id) from users where favs LIKE '% 23 %' and user_id=10;
pero siento la segunda vía no es muy "correcto" en términos de MySQL.
¿Me puede decir algo?
Muchas gracias por una explicación tan clara. Sí, olvidé que puedo agregar el índice de la tabla en el primer caso y que resolverá el problema con miles de registros. – oyatek
@oyatek: No hay problema. Estoy feliz de ayudar – AgentConundrum