こんにちは私はPHPで直接メッセージの受信トレイを作成しようとしています。ログインしたユーザーと、ログインしたユーザーがメッセージを送信した、またはログインしたユーザーにメッセージを送信したユーザーの間で、最新のメッセージを受け取るクエリを作成しようとしました。 InsatagramとTwitterがインボックスにどのように表示されているのと同様に、ログインしているユーザーとメッセージを持っている人やメッセージを送った人との間のすべての会話のリストを表示します。ダイレクトメッセージのMySqlクエリ
現在のところ、私のクエリは、ログインしているユーザーと、そのユーザーと他のユーザーとの間に最新のメッセージのみが必要なときに会話したユーザーとの間のすべての会話を表示します。私はこれを十分に説明してくれることを願っています。
今のように私のクエリ文は次のとおりです。たとえば
CREATE TABLE IF NOT EXISTS dm (
id INT(11) NOT NULL AUTO_INCREMENT,
receiver VARCHAR(100) NOT NULL,
sender VARCHAR(100) NOT NULL,
senttime DATETIME NOT NULL,
message TEXT NOT NULL,
PRIMARY KEY (id)
)
:
id receiver sender senttime message
1 Jack Will 2016-07-20 20:59:27 Hi
2 Jack Bob 2016-07-21 20:59:27 What's up
3 Bob Jack 2016-07-22 20:59:27 Hanging out what about
を返す必要がありますジャック場合は、次の
SELECT *
FROM dm
WHERE(receiver="user") or (sender="user")
ORDER BY senttime DESC;
マイダイレクトメッセージテーブルは次のようになりますクエリのユーザーです
id receiver sender senttime message
3 Bob Jack 2016-07-22 20:59:27 Hanging out what about you?
1 Jack Will 2016-07-20 20:59:27 Hi
これにはありません作業。クエリでは、JackとBobの送信者と受信者の値が区別されません。 – JoOlay
コードの新しいバージョンを試してください –
ありがとうございました!できます! – JoOlay