好的,所以我有这个我正在研究的私人消息系统,这里有点组织方式
ID From-ID To-ID Message Thread
1 0 1 "blah blah blah" 1
2 0 1 "blah blah blah, blah!" 1
3 0 3 "hey <3>, how are you? Signed, <0>" 2
这样的方式是你可以在一个帖子中有多条消息,所以你可以回复。
然后在我的私人消息页面的左侧,您可以选择要查看的线程。
因此,它将是一个显示发件人姓名的按钮,因此我使用了这个SQL:
mysql_query("SELECT * FROM pms WHERE to-id='".$_SESSION['id']."' ORDER BY id ASC");
但是,我希望它类似于(伪代码)
mysql_query("SELECT * FROM pms WHERE to-id='".$_SESSION['id']."' LIMIT 1 per `thread` ORDER BY id ASC");
这样它只会显示一个指向某个帖子的链接。
现在发生的事情是,每次有线程回复时,它都会显示一个新按钮。所以,如果有100个回复消息,并且它们都在同一个帖子中(因为它们是“回复”),那么将有101个按钮,这是不理想的,原因显而易见。
除了我正在谈论的那个按钮限制外,一切当前都在工作。
答案 0 :(得分:1)
首先要做的事情......你的ID栏......不应该是自动递增吗?只是检查......
如果你想获得所有线程,你可能想要做一些像......
Select distinct thread from pms
-- then optionally...
where to-id = '".$_SESSION['id']"' order by ID asc
这样,你就可以得到每个线程的第一个实例。