Ver Mensaje Individual
  #1 (permalink)  
Antiguo 03/03/2011, 09:21
kenproxd
 
Fecha de Ingreso: agosto-2009
Mensajes: 349
Antigüedad: 14 años, 9 meses
Puntos: 8
Problema con bucles

Hola,

sigo teniendo problemas con mi sistema de amigos. Esta vez logré obtener el id de cada amigo pero no se cómo mostrarlos ni darle cierto limite (5 amigos para mostrar como máximo). Este es el código:

Código PHP:
Ver original
  1. $query1 = mysql_query("SELECT * FROM friends INNER JOIN users ON friends.user2=users.id WHERE friends.user1=$id AND friends.valid=1") or die(mysql_error());
  2. $contar1 = mysql_num_rows($query1);
  3.  
  4. $query2 = mysql_query("SELECT * FROM friends INNER JOIN users ON friends.user1=users.id WHERE friends.user2=$id AND friends.valid=1") or die(mysql_error());
  5. $contar2 = mysql_num_rows($query2);
  6.  
  7. $total = ($contar1+$contar2)/2;
  8.  
  9. if($total == '') {
  10.    
  11.     echo "Usted no tiene amigos.";
  12.    
  13. } else {
  14.  
  15. while($row1 = mysql_fetch_array($query1) AND $row2 = mysql_fetch_array($query2)) {
  16.     $nombre_amigo1 = $row1['user'];
  17.     $amigo1 = $row1['id'];
  18.     $nombre_amigo2 = $row2['user'];
  19.     $amigo2 = $row2['id'];
  20.    
  21.     while($sql1 = mysql_fetch_array(mysql_query("SELECT avatar FROM users_ifno WHERE id_user = $amigo1 OR id_user = $amigo2"))) {
  22.        
  23.         if($sql1['amigo1'] != $id) {
  24.             echo "<div class='avatar'><img src='".$sql1['avatar']."' title='".$nombre_amigo1."' width='55px' height='55px'></div>";
  25.             } else {
  26.             echo "<div class='avatar'><img src='".$sql1['avatar']."' title='".$nombre_amigo2."' width='55px' height='55px'></div>";    
  27.             }
  28.         }
  29.     }
  30. }

Como pueden ver guardo el total de amigos en la variable $total.

Además uso un bucle dentro de otro bucle para mostrar los avatares. Esto hace que sólo se muestre la imagen del primer amigo muchisimas veces.

Espero que puedan ayudarme.