0

私はPHPとSQLにかなり慣れていません。私は今日、友達システム(Facebookとほぼ同じ)のプログラミングに費やしましたが、同じ列に複数の友達がいる方法がわかりません。したがって、ユーザー「admin」に「john」という名前の友達がいるとしましょう。adminはテストリクエストを送信し、johnは受け入れます。どちらもお互いの友達の列に入ります。しかし、別の管理者の友人が彼にリクエストを送信し、それを受け入れると、「john」が新しい名前で上書きされるため、列にjohnや別の友人などではなく1つの値しかありません。上書きしますが、代わりに列に追加し続けます。

これが理にかなっていることを願って、事前に感謝します!

4

1 に答える 1

1

必要なのは「一対多」の関係です。1 人の「人」は、他の多くの「人」と友達になることができます。

person という名前のテーブルが 1 つあります。

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

そして、friends と呼ばれる 1 対多のテーブルを作成します。

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

それでは、友人のテーブルを見てみましょう。私たちの最初の関係はジョンとフランクの間で、彼らは友達です。ジョンとメアリー、フランクとメアリーもそうです。オスカーには友達がいません。

于 2013-01-18T19:35:14.293 に答える