Ver Mensaje Individual
  #1 (permalink)  
Antiguo 24/03/2010, 00:43
freedatos
 
Fecha de Ingreso: abril-2003
Mensajes: 587
Antigüedad: 21 años
Puntos: 5
De acuerdo Amigo de mis amigos (Amigos en comun)

Hola creo que me hice un lió donde no se salir, tengo que mostrar el numero de amigos en común que tiene cada usuario al comienzo la idea era fácil pero o bien me e echo un lió o bien esta mas complicado de lo que pensaba pero me metí en un atolladero del cual no se salir.

Necesito mostrar los amigos en común que tienen el numero de amigos en común, la tabla mysql esta así montada.

id id_usuario id_amigo aprobado
13 21 17 1
16 20 12 1
10 20 17 1
14 17 21 1
11 17 16 1
9 17 20 1
1 17 12 0
12 16 17 1
7 12 10 1
2 12 17 0
15 12 20 1
8 10 12 1

Bien ejemplo:
17 agrega a 12 aprobado 1
12 agrega a 17 aprobado 1


Como mirar los amigos que tienen en común 17 con 12 aquí es donde me lié parece simple pero no lo es por lo menos no veo el camino simple ando dando por por aquí pero no me anda bien. SENTENCIA

Código PHP:
$consulta $db->consulta("SELECT a.id_usuario AS Amigo_1, b.id_usuario AS Amigo_2, b.id_amigo AS Amigo_en_común FROM amigos a LEFT JOIN amigos b ON (a.id_amigo=b.id_usuario AND a.id_usuario!=b.id_amigo AND b.id_amigo=(SELECT id_amigo FROM amigos WHERE id_usuario='".$_SESSION['id']."' AND id_amigo=b.id_amigo )) WHERE a.id_usuario ='".$amigo."' AND a.aprovado = 1 AND b.aprovado = 1");
    
    return 
$total_resultados $db->cuenta($consulta); 
No hay forma a alguien se le ocurre algo?

gracias!
__________________
Si la vida te da la espalda tocale el culo