Javascript 最好的1-1聊天模式是什么?(AJAX/CI/JQ)
我正在创建一个系统,其中我计划让用户a生成一个特殊的聊天链接,以便他/她可以与用户B进行通信。这是一个1-1聊天模型。下面是我的模型的模式。我需要知道它是否实用或者是否可以改进Javascript 最好的1-1聊天模式是什么?(AJAX/CI/JQ),javascript,jquery,ajax,codeigniter,Javascript,Jquery,Ajax,Codeigniter,我正在创建一个系统,其中我计划让用户a生成一个特殊的聊天链接,以便他/她可以与用户B进行通信。这是一个1-1聊天模型。下面是我的模型的模式。我需要知道它是否实用或者是否可以改进 table messages chatid; {fk} message_id; {pk} timestamp; sender; table chat chatid; {pk} userA; userB; timestamp; 以下是该场景的控制流程: 用户A打算与用户B聊天 用户A进入生成聊天会话页面 用户A从列表中
table messages
chatid; {fk}
message_id; {pk}
timestamp;
sender;
table chat
chatid; {pk}
userA;
userB;
timestamp;
以下是该场景的控制流程:
tbl_chat
-------------
chat_id (pk)
user_id_a (fk)
user_id_b (fk)
timestamp
tinyint;
tbl_msg
-------------
message_id (pk)
chat_id (fk)
user_id_sender (fk)
message_body
timestamp
添加锡;闲聊
因此,当用户A单击kill chat时,将其设为1,默认值为tinyint=0;
因此,这将终止聊天。为了能够将聊天扩展到两个以上的用户,并且不必在查询中同时检查chat.userA和chat.userB,我不会在聊天表中使用userA和userB。相反,我会添加一个表(例如chat_users),其中包含用户名/id(无论您在userA和userB中输入什么)和一个chatid。除此之外,我认为信息需要一个主体
table messages
chatid; {fk}
message_id; {pk}
timestamp;
userid; {fk}
body;
table chat
chatid; {pk}
timestamp;
table chat_user
userid; {fk}
chatid; {fk}
@joidegn哈哈,你是什么意思,先生。使用php长轮询或node.js socket.io进行聊天:我想让它变得简单,而不是像轮询或node.js那样复杂。你没有回答我的问题。我说的是模型。通过收件箱相互复制和粘贴会话链接。呵呵@joidegn:正如我说的,基本的。你还没有回答我的主要问题。关于模型,明白了。那么最后的模型是什么?我只是想了想。这不是我期望的最佳模式。只需将
user\u online int default 0
添加到chat\u user表中即可。当用户登录/打开聊天并查询列表/个人资料并启动聊天时,设置为1。@stormdrain:在哪里?见我的原始问题,下面由编辑asker@AliGajani到聊天室用户
表;请参阅我在上面的评论2。如果您需要代码方面的帮助,请显示您已有的代码。