我有一个名为friends的桌子,让我的朋友留在php朋友系统中。表格如下:
friend_id | user_one | user_two
我的脚本如下显示我的朋友。
$check_friend_query = mysql_query(" SELECT friends_id from friends WHERE (user_one='$session_user_id' AND user_two ='$user_id') OR (user_one='$user_id' AND user_two='$session_user_id') ");
if( mysql_num_rows($check_friend_query) == 1 ){
echo" 1st degree friend";
}
我想要的只是展示二度朋友。我的二年级朋友是我朋友的朋友。知道怎么做吗?
答案 0 :(得分:1)
您可以运行原始查询来抓住所有朋友(就像您拥有的那样),然后使用他们的用户ID作为要查找的变量来查找他们的朋友。
mysql_query("SELECT friends_id from friends WHERE user_one='$user_id'");
这样的内容会检查friends_id
所有名称为此人的user_id
的朋友。
虽然变量有点难以弄清楚,因为我不知道脚本。
答案 1 :(得分:0)
加入好友反对自己:
SELECT degree2.*
FROM friends
LEFT JOIN friends AS degree2 ON friends.user_two = degree2.user_one
WHERE friends.user_one = 'original friend';
对于更多学位,您只需添加另一个加入级别,例如
LEFT JOIN friends AS degree3 ON degree2.user_two = degree3.user_one
LEFT JOIN friends AS degree4 on degree3.user_two = degree4.user_ond
etc...