Ver Mensaje Individual
  #10 (permalink)  
Antiguo 03/12/2009, 07:35
paloto
 
Fecha de Ingreso: abril-2007
Mensajes: 114
Antigüedad: 17 años
Puntos: 2
Respuesta: Como puedo hacer una base de datos de amigos

Lo que yo haría sería lo siguiente:

Mantendría la estructura de tablas que habéis propuesto, pero cambiaría el funcionamiento de forma que cuando un usuario (Luis) solicita añadir a otro como amigo (Manuel), se ingresa un registro en la base de datos con los datos idamigo1= idLuis e idamigo2 = idManuel. Y cuando Manuel ve esa solicitud y la acepta se ingresaría otro registro con los datos idamigo1=Manuel e idamigo2=Luis (igual pero con los campos inversos). De esta forma una "amistad" no es oficial hasta que existan dos registros inversos.

id::::::idamigo1:::::idamigo2
1:::::::::::1:::::::::::::::::2
2:::::::::::1:::::::::::::::::3
3:::::::::::2:::::::::::::::::3
4:::::::::::3:::::::::::::::::1

Con estos registros 1 y 3 son amigos. 2 vería la solicitud de 1 de añadirlo como amigo y 3 vería la solicitud de 2 de añadirlo como amigo.

Bueno, no sé si será mejor o peor para tu sistema, pero es una idea más. Espero que te ayude.

UN saludo