你好,我有一个包含3个表的数据库。
USERS('user_id','name','surname')
MESSAGE_GROUP('user_one','user_two', 'hash')
MESSAGES('from_id','group_hash', 'messages')
我的PHP代码使我能够在用户之间发送消息。我的问题是如何让用户从其邮箱中删除邮件,但另一个用户仍然在看邮件。仅当两个用户都删除邮件时,才必须完全删除邮件。我对代码并不感兴趣,我很有兴趣只找到这背后的逻辑。任何包含mysql代码的提议都是受欢迎的。感谢
答案 0 :(得分:0)
您需要:
答案 1 :(得分:0)
向MESSAGE_GROUP添加值为的状态字段:
0没有所有者,应该删除 1只有发件人拥有该邮件 2只有接收者拥有该消息 3发件人和收件人都拥有它
答案 2 :(得分:0)
我会像这样更改表格中的字段(例如每个用户一次只能向一个人发送消息):
USERS('user_id','name','surname')
MESSAGE_GROUP('user_id','message_id')
MESSAGES('from_id', 'to_id', 'messages')
因此,每个有消息的用户都会在MESSAGE_GROUP中有一行。当一个用户删除帖子时,删除MESSAGE_GROUP中的该行
答案 3 :(得分:0)
我认为你应该遵循这个。 :)
message_group
表格中添加一个类似'deleted_from'
的字段,该字段最初为0
'deleted_from'=1
的值,如果用户2删除它,则设为值'deleted_from' = 2.
'deleted_from'
不是0,请完全删除邮件,否则将'deleted_from'
的值标记为'1'
或'2'
。