私はかなり長い間このことについて考えてきましたが、データベースのコメントに返信を追加する方法が必要ですが、どのように進めるのかは分かりません。コメントとコメントの返信のためのmysql構造
これは私の現在(あまり言いませんが、そのスタート)テーブルコメント:
SELECT c.id, c.comment, c.user_id, u.username, u.photo
FROM (comments c)
JOIN users u ON c.user_id = u.id
WHERE c.topic_id = 9
一つのオプションは、作成するために次のようになります。
CREATE TABLE IF NOT EXISTS `comments` (
`id` int(12) NOT NULL AUTO_INCREMENT,
`comment` text,
`user_id` int(12) DEFAULT NULL,
`topic_id` int(12) NOT NULL,
`ts` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (`id`),
KEY `user_id` (`user_id`),
KEY `topic_id` (`topic_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=27 ;
、ここでは私の現在のクエリです"comment_replies"という新しいテーブルがありますが、わかりません。1つのクエリですべてのコメントとコメントの回答を選択できる場合、 "reply"という新しい列を追加すると、どのように並べ替えるか分かりませんそれぞれの返信でそれぞれのコメントを取得します。
私はこれに対処する方法についていくつかアドバイスを受けたいと思います。
編集:以下の1件のコメントから、アレイのこの種のparent_comment_id結果の追加についての答えと2件の回答後
:私はそれで動作するように、この配列をどのように処理すべきか
array(2) {
[0]=>
object(stdClass)#17 (7) {
["id"]=>
string(2) "26"
["comment"]=>
string(36) "adding a comment from the admin page"
["user_id"]=>
string(2) "16"
["ts"]=>
string(10) "1249869350"
["username"]=>
string(5) "Admin"
["photo"]=>
string(13) "gravatar2.png"
["reply"]=>
string(23) "There is no admin page!"
}
[1]=>
object(stdClass)#18 (7) {
["id"]=>
string(2) "26"
["comment"]=>
string(36) "adding a comment from the admin page"
["user_id"]=>
string(2) "16"
["ts"]=>
string(10) "1249869350"
["username"]=>
string(5) "Admin"
["photo"]=>
string(13) "gravatar2.png"
["reply"]=>
string(13) "Yes there is!"
}
}
、コメントを返信から分離することは可能ですか?
関数 'array_search_key'とは何ですか?PHPの標準ライブラリ関数ではありません – HorusKol
ページ分割はどのように機能しますか? – Mrusful
ここで、array_search_key関数は何ですか?それはPHPに存在しますか? –