テーブル:
+----+----------+-----------+---------+
| id | topic_id | from_user | to_user |
+----+----------+-----------+---------+
| 6 | 5 | 4 | 5 |
| 2 | 6 | 5 | 2 |
| 3 | 5 | 2 | 5 |
| 4 | 4 | 5 | 4 |
| 5 | 4 | 5 | 4 |
| 7 | 6 | 5 | 2 |
| 8 | 5 | 2 | 5 |
| 9 | 5 | 4 | 5 |
| 10 | 0 | 2 | 5 |
| 11 | 6 | 5 | 2 |
| 12 | 3 | 5 | 2 |
| 13 | 0 | 5 | 2 |
+----+----------+-----------+---------+
これはメッセージ テーブル (プライベート メッセージのようなもの) です。from_user と to_user は自己記述的です。この目的では topic_id は重要ではありません。
ここで、現在ログインしているユーザーの受信トレイに表示するメッセージのリストを選択する必要があります。このユーザーをセッション変数で参照します$this_user = $_SESSION['id']
私はこのクエリを持っています:
SELECT *
FROM messages
WHERE from_user = '$this_user' OR
to_user = '$this_user'
ただし、これには 4 - 5、5 - 4、5 - 4、
私はDISTINCTで試しましたが、どちらもうまくいきません
任意の助けが必要