0

好的,我在数据库中有这样的消息表:

id
thread_id
from_user
to_user
message

我遇到的问题是在现场显示这些消息。与私人消息一样,只有接收者和发送者才能看到消息。还有一件事很重要,消息与线程相关,所以当发件人联系创建线程的用户时(用户只能向线程创建者发送消息,每个将被联系的用户都必须有一个他创建的线程)这个对话是仅与此线程有关。所以,现在检查我尝试了什么:

SELECT * 
FROM messages 
WHERE thread_id = '$thread_id' 
    AND (from_user = '$from' OR from_user ='$to' ) 
    AND ( to_user = '$to' OR to_user = '$from' )

这在大多数情况下都有效,但我想知道这是否是经典查询,仅用于限制用户查看消息?

$thread_id is ID of the thread passed to query
$from is $_SESSION['id'] 
$to is ID of thread owner ( user who receives the message )

我用少数用户对此进行了测试,但有些地方不对劲。有时我只收到一条发送的消息,但看不到回复

4

0 回答 0