2014-11-06 9 views
0

코멘트를 작성할 수있는 코멘트 시스템을 만들고자하는데, 사람들은 더 깊은 레벨 (예 : reddit)의 코멘트에 답장을 보낼 수 있습니다. 부모가 아래에 나타날 수 있도록 자식이 부모 ID를 참조하는 방법을 다소 이해합니다. 그러나 실제로 부모 ID를 만든 다음 참조 할 자식 ID를 얻으려면 어떻게해야합니까? 여기 어떻게 부모 ID를 생성하고 하위 스레드 주석 시스템에서이를 참조하도록합니까?

내가 원하는 무엇의 예 :

Main Comment 
    Reply to Main Comment 
    Reply to Main Comment 
     Reply to Child Comment 
      Reply to Child Child Comment 
    Reply to Main Comment 
Main Comment 

그리고 이해 깊이가 될 것이라고 :

0 
1 
1 
    2 
    3 
1 
0 

을하지만 어떻게 내가, 부모 ID를 할당 않도록 제 1 메인 코멘트 AAA라고 말하면 두 번째 주평은 AAB입니다.

도움 주셔서 감사합니다.

+0

당신이 주석 정보를 저장하는 방법? MySQL은? –

+0

그래, MySQL 서버. –

답변

0
Parent 
- New Comment 
    - This comments parent is "New Comment" 
    - This comments parent is "New Comment" 
- This Comments parent is "Parent" 

학부모는 기본적으로 자체 내에서 의견을 말하고 서식을 지정하기 만하면됩니다.

0

먼저 테이블 구조가 설정됩니다. 내가 구현 한 사이트에서 테이블에는 name, content, email 등과 같은 중요한 필드가 있습니다. 또한 테이블의 다른 주석을 참조 할 수있는 parent_id 필드가 있습니다. 주석이 최상위 레벨에있을 때이 필드는 NULL입니다.

내 PHP 스크립트에서는 parent_id = NULL이있는 모든 주석, 즉 최상위 수준의 주석 만 쿼리합니다. 그런 다음 최상위 수준의 모든 주석을 반복하면서 parent_id과 동일한 주석을 쿼리합니다. 이는 내가 반복하고있는 주석의 id과 같습니다. 그런 다음 들여 쓰기로 스타일을 지정합니다.

귀하의 의사 코드는 다음과 같습니다

// Query for comments 
while ($comment = mysqli_fetch_array($comments)) { 
    // Render top level comment 
    // Query for sub-level comments with parent_id of $comment 
    while ($subcomments = mysqli_fetch_array($subcomments)) { 
    // Render sub-level comment 
    } 
}