Database Query MySQL per visualizzazione di amici

Stato
Discussione chiusa ad ulteriori risposte.

Deme3

Utente Gold
8 Agosto 2010
582
109
35
299
Salve.. sto creando un social privato.. e per la lista degli amici non riesco a risolvere questa query, dove sbaglio?:
Codice:
SELECT * FROM friends WHERE friendof='$uid' OR ofid='$uid';
$uid è l'ID dell'utente loggato

Non mostra nessuno, nella tabella c'è una sola riga:
Codice:
id || friendof || ofid || type
1  || 3        || 1    || 2

Visto che ofid è 1, cioè il mio ID dovrebbe trovarlo.. ma non lo trova, ho controllato e non ci sono nemmeno errori di esecuzione o nella query. Cosa sbaglio?

Ecco lo script
Codice:
<?php require_once "global.php"; ?><ul class="friendlist">
<?php
$uid = $core->user['id'];
$query = "SELECT * FROM friends WHERE friendof='".$uid."' OR ofid='".$uid."';";
$query = mysql_query($query) or die(mysql_error());


if($query)
{
    $numrows = mysql_num_rows($query);


    if($numrows == 0)
    {
        echo "Nessun amico disponibile.";
    }
    else
    {
        for($i = 0; $i<$numrows; $i++)
        {
            $row = mysql_fetch_row($query);
            $id = $row[0];
            $friendof = $row[1];
            $ofid = $row[2];
            $type = $row[3];
            if($ofid != $uid)
            {
                $fs = "SELECT * FROM users WHERE id='".$ofid."';";
                $fs = mysql_query($fs);
                $fs = mysql_fetch_array($fs);
                $avatar = $fs['avatar'];
                
                echo '<li class="friend"><img src="'.$avatar.'" class="favatar" width="24" height="24"><span class="friendnick">';
                echo $fs['username'] == null ? "Utente iChat " : $fs['username']."</span> ";
                if($fs['online'] == 1)
                {
                    echo '<img src="http://www.inforge.net/community/images/online.png" class="status">';
                }
                else if($fs['online'] == 2)
                {
                    # echo '<span class="status_nondisp">Occupato</span>';
                }
                else if($fs['online'] == 0)
                {
                    # echo '<span class="status_offline"></span>';
                }
                echo '</li>';
            }


        }
        echo '<li class="friend" onclick="chatListSlide(document.getElementById(\'chat\'))">Hide Chat list</li>';
    }


}
else
{
echo "Impossibile caricare la lista degli amici.";
}
?>
</ul>
 
Ultima modifica:
Ah, il problema stava nella query per selezionare l'amico! :
Usavo solo la variabile $ofid, non tentavo anche $friendof

Credo sia risolto, amen!
 
Stato
Discussione chiusa ad ulteriori risposte.