0

我对 PHP 和 SQL 还很陌生。我今天花了很多时间编写一个朋友系统(几乎与 Facebook 的相同),但我不确定如何在同一列中拥有多个朋友。因此,假设用户 'admin' 有一个名为 'john' 的朋友 admin 发送测试请求并且 john 接受,他们都进入了彼此的朋友列。但是假设另一个管理员朋友向他发送了一个请求,他接受它只会用新名称覆盖“john”,因此列中只有一个值而不是 john、另一个朋友等。怎么可能不覆盖,而是继续添加到列中。

我希望这是有道理的,并提前感谢!

4

1 回答 1

1

您需要的是“一对多”的关系。一个“人”可以与许多其他“人”成为朋友。

您将有一张名为 person 的表:

person_id | person_name
-----------------------
1 | John
2 | Frank
3 | Mary
4 | Oscar

你会有一个名为friends的一对多表:

person_id1 | person_id2
-----------------------------------
 1 | 2
 1 | 3
 2 | 3

所以,现在通过查看我们的朋友表。我们的第一个关系是约翰和弗兰克之间,他们是朋友。约翰和玛丽,弗兰克和玛丽也是如此。奥斯卡没有朋友。

于 2013-01-18T19:35:14.293 回答