扩展现有的PHP消息系统

时间:2017-10-08 18:07:43

标签: php mysql ajax chat message-system

已编辑 - 差不多完成了!请阅读 - > “编辑1.1”

我在app开发者社交平台中实现了一个非常简单的基于PHP / MYSQL的消息系统。 消息表的结构如下所示:

  • MESSAGE_ID
  • 受试者
  • from_user_id
  • from_user_name
  • to_user_id
  • has_read
  • MESSAGE_TEXT
  • message_timestamp

如果您转到个人消息部分,您会看到消息刚按message_timestamp排序。这不是一个非常好的可用性。

我想重构这个,类似于whatsApp:作为一个用户,我想导航到我的私人消息部分并获得我所有聊天伙伴的概述。当我点击聊天伙伴时,我希望看到我们的消息历史记录。

1。)我试图找出perfekt表结构对于我的新需求的样子,但我没有得到有用的结构:

  1. 显示我正在聊天的所有用户
  2. 在我点击用户
  3. 时显示消息
  4. 使用非常快的查询,因此我的服务器没有使用message-system超载
  5. 编辑1.1

    也许我可以将我的桌子改成这个?

    • conversation_id (新!)
    • MESSAGE_ID
    • 受试者
    • from_user_id
    • from_user_name
    • to_user_id
    • has_read
    • MESSAGE_TEXT
    • message_timestamp

    然后当我点击某个用户时,会话将被选中(... WHERE'conference_id'='123'ORDER BY'message_id'ASC)

    你怎么看? 这对数据库来说是否很重要?有更好的解决方案吗?

    我应该使用嵌套表吗?那么表现呢?

    2。)[回答 - > “NO”]将消息存储在与其他表格分开的另一个数据库中是否更好?我在其中执行平台的其他工作?

    3。)[回答 - > “使用服务器发送的事件”]如何在不重新加载页面的情况下显示收到的消息。我可以使用任何基于Jquery-Ajax-PHP的Observer吗?

    注意:使用/构建聊天系统对我来说不是问题 - 但我希望每次回到页面并自己登录时都能读取旧消息。

0 个答案:

没有答案