Primero, la introducción al asunto:
Quiero mostrar en una tabla, los amigos de un usuario..
Mi tabla de relaciones la tengo como "de" "para" y el estado 1 es qe son amigos (no se me ocurrio como plantear mejor la relacion de que sean amigos en otra tabla)...
Entonces, lo que quiero es que busque todos los resultados donde este el usuario y el estado sea uno...
luego con la id del amigo que tiene 1 con él, qe busque en otra tabla sus datos...
Ahora el codigo:
Código PHP:
<?
// bla bla
$sql_res=mysql_query("SELECT * FROM amistad WHERE de='".$_GET['id']."' OR para='".$_GET['id']."' AND estado='1' order by id LIMIT 5");
while($row=mysql_fetch_array($sql_res)){
if($row['de']!=$_GET['id']){
$amigoid = $row['de'];
}
else{
$amigoid = $row['para'];
}
$amigo = mysql_query("SELECT * FROM info_usuarios WHERE id='$amigoid' order by id LIMIT 5 ") or die(mysql_error());
while($row2=mysql_fetch_array($amigo))
{
?>
<td width="20%" ><div align="center"><a href="../perfil.php?id=<?=$row2['id']?>">
<? if($row2['imagen']==NULL){
echo"<img src='../imagenes/noimagen.jpg' width='50' height='50' border='0' />"; }
else{
echo"<img src='$row2[imagen]' width='50' height='50' border='0' />";
} ?>
</a><br />
<? echo"<a href='../perfil.php?id=".$row2['id']."' ><strong>".$row2['apodo']."</strong></a>"; ?></div></td>
<? } } ?>
La cuestion es que me muesta los amigos sin importar el estado=1 ... porque apenas se envia la solicitud de amistad, creando una fila en la tabla pero en estado 2, se muestra igual.
supongo el error está en la primer consulta, donde está el AND estado=1
Espero puedan ayudarme. Gracias!