.- bueno yo estoy empezando un script de juegos pero con un mini sistema de amigos pero tengo un problema en imprimir la lista de amigo osea ejemplo
si yo entro al usuario URL localhost/perfil?id=1 y este usuario agrega un amigo con otro id localhost/perfil?id=2 pero cuando yo quiero imprimir la lista de amigos osea yo voy a perfil 1 (localhost/perfil?id=1 ) y veo que tiene de amigo al perfil 2 pero si yo voy al perfil 2 (localhost/perfil?id=2 ) no se ven los amigos
OTRO EJEMPLO
si el usuario 1 agrega al usuario 3 y el 2 tambien agrega al usuario 3
en el perfil 1 se ve de amigo que tiene al usuario 3 igual que en el usuario 2 PERO en el usuario 3 se tendria que ver que tiene de amigo al usuario 1 y 2 pero no no se ve nada nose que estoy haciendo mal
aca le dejo los archivos a ver si me pueden ayudar
Perfil.php
Código PHP:
<?php
/* obtenes el id de la url */
$id=$_GET['id'];
/* perfil.php?id=$id */
/*buscamos el usuario*/
$ukery=$db->query("SELECT *
FROM users
WHERE {$puser}");
/*Comprobamos si existe*/
if(!$db->num_rows($ukery)){
no_error("El usuario no existe");
}
/*mostramos*/
$kery=$db->fetch_array($ukery);
$autor=$kery['id'];
$db->free_result($ukery);
/*Imprimimos la lista de amigos aca esta el problema :( */
$amigos = mysql_query("SELECT s.id_user, s.id_amigo , u.*
FROM (amigos as s, usuarios as u)
WHERE s.id_user='{$id}' and s.id_amigo=u.id
ORDER BY s.id_user ASC
LIMIT 5");
while($row = mysql_fetch_array($amigos)){
echo'<li><img src="'.$row['avatar'].'" style="max-width:60px"> '.$row['nombre'].'</li>';
}
mysql_free_result($amigos);
?>
tabla amigos
Cita:
ID_USER : esta columna es del usuario que agregaCREATE TABLE IF NOT EXISTS `amigos` (
`a_id` int(11) NOT NULL AUTO_INCREMENT,
`id_user` int(11) NOT NULL,
`id_amigo` int(11) NOT NULL,
`aprobado` smallint(1) NOT NULL DEFAULT '0',
`fecha` int(11) NOT NULL,
PRIMARY KEY (`a_id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=58 ;
`a_id` int(11) NOT NULL AUTO_INCREMENT,
`id_user` int(11) NOT NULL,
`id_amigo` int(11) NOT NULL,
`aprobado` smallint(1) NOT NULL DEFAULT '0',
`fecha` int(11) NOT NULL,
PRIMARY KEY (`a_id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=58 ;
ID_amigo : esta columna es del usuario al que agrego
tabla usuarios
Código HTML:
CREATE TABLE IF NOT EXISTS `users` ( `id` int(20) NOT NULL AUTO_INCREMENT, `nombre` varchar(40) NOT NULL DEFAULT '', `nick` varchar(25) NOT NULL DEFAULT '', `password` varchar(40) NOT NULL DEFAULT '', `apellido` varchar(40) NOT NULL DEFAULT '', PRIMARY KEY (`id`), KEY `id` (`id`) USING BTREE ) ENGINE=MyISAM DEFAULT CHARSET=latin1 ROW_FORMAT=DYNAMIC AUTO_INCREMENT=100 ;
Espero su ayuda. capas que es un problema de where (filtrado) en la consulta que estoy haciendo o algo estoy haciendo mal seguro. espero a ver sido claro un gusto y gracias de antemano