2016-08-12 5 views
1

私は電子メールプロジェクトに取り組んでいます。私はgmailのようなスレッドで電子メールを表示したいと思います。電子メールの信頼性が高く正確なスレッド構造ですか?

メールをスレッドに表示するには、どのような方法が最適ですか?

jwz threading algorithmを確認しました。しかし、そのアルゴリズムは、データベースを持たないプロジェクト用に書かれているようです。このアルゴリズムは、これらの3つのヘッダーキーに焦点を当てています。 Message-ID,とReferences

mysqlデータベースを使用してスレッドを達成するための適切で効率的で正確な方法を教えてもらえますか?

スレッドと参照に別のテーブルを使用する必要がありますか?

可能であれば、いくつかのサンプルのmysqlクエリを与えてください。だから、私はよく理解できる。

ありがとうございます。

答えて

0

電子メールなどのメッセージボードの設計など、あらゆるメッセージボードの設計も有効です。あなたのemail.folder.indexページでそう

email.id user_id subject status folder created updated ...other info you'd save 
1  123  Hello New  Inbox Y-m-d.. Y-m-d.. ... 
2  3456 World Replied Inbox ... 

reply.id email_id reply_to_id user_id created email_txt ip ... 
10  1  0   890  Y-m-d.. Hi ... 
20  2  0   5678 ... 
30  2  20   3456 ...  Replyto 2 
55  2  30   5678 .... Replyto 3 

SELECT * FROM email WHERE user_id = 12345 ORDER BY updated desc LIMIT 50 

そして、あなたはインデックスページ、後藤の電子メールの詳細ページに1通の電子メールをクリックしてください:

私もデザインを考え出します
SELECT * FROM reply WHERE email_id = 2 ORDER BY created, reply_to_id 

重要な魔法は、reply_to_idに基づいてツリーが構築されていることです。

関連する問題