2009-06-08 6 views
0

こんにちは私は2つのテーブル(ユーザ&の友人)私は友人のテーブルに接続する必要があります、ユーザーIDのすべての友人を持って、ユーザーテーブルに接続し、友人IDを使用して私は以下のコードを持っていますが、これは1人のユーザしか持ちません。2つのSQLクエリを介してループphp

オンラインユーザー数をカウントする必要があります。

function online_friends() 
{ 

$ID = ($_SESSION['ID']); 
$friend = "SELECT * FROM `friends` WHERE `user_id` = '$ID' AND `accepted` = 'TRUE'"; 
$result=mysql_query($friend); 

    while ($row = mysql_fetch_assoc($result)) 
    { 
    $friend_id = $row['friend_id']; 
    $get = "SELECT * FROM `users` WHERE `ID` = '$friend_id' AND `online` = 'TRUE'"; 
    $result_friend=mysql_query($get); 
    $count_friends=mysql_num_rows($result_friend); 
    } 
    return $count_friends; 

} 

おかげ 編集:私はphpmyadminのを通じて実行することにより、手動でこれらをチェックして、それが2行以上をもたらします。

+0

あなたが参加したクエリを使用することはできませんか? – NinethSense

答えて

1

まず、クエリ文字列を手動で作成するのではなく、準備済みのクエリを実際に使用する必要があります。

第二に、あなたが望むクエリは次のようになります。

Select count(*) from `friends` join `users` on `user_id`=`users`.`id` where `users`.`id`=? and `accepted`=`TRUE` and `online`='TRUE' 
+0

ありがとうございます:) –

関連する問題