댓글을 추천 순으로 정렬하는 법 채택완료
댓글에 추천 비추천 기능을 넣었고 아래 코드를 활용하여 추천순으로 정렬되게 했습니다.
$sql = " select * from $write_table where wr_parent = '$wr_id' and wr_is_comment = 1 and wr_comment_reply = '' order by wr_good desc ";
위 코드대로 하니 댓글에 달린 답변을 안 불러옵니다.
그래서
wr_comment_reply = ''
아래 코드대로 하니 댓글과 댓글에 달린 답변이 뒤죽박죽 다 섞여서 오직 추천순대로만 나타납니다.
$sql = " select * from $write_table where wr_parent = '$wr_id' and wr_is_comment = 1 order by wr_good desc ";
그래서
1. 일단 wr_comment_reply = ''를 wr_good 내림차순으로 정렬
2. wr_comment_reply != ''인 것을 불러와서 위 1번 정렬된 댓글에 wr_comment 값이 같은 것들과 그룹 지음
위 1~2번 대로 하면 댓글 추천 순이 제대로 될 거 같은데 어떻게 쿼리를 짜야할까요?ㅠㅠ
아니면 더 좋은 방법이 있을까요?ㅜㅜ
답변 2개
댓글에 1차 답글, 2차...계속 답글이 붙으면 일번쿼리나 서브쿼리로 하기는 어려울 것 같군요
wr_comment_reply = ''를 wr_good 내림차순으로 리스트를 만든 다음
리스트에서 동일한 wr_comment 이고 wr_comment_reply 문자 갯수가 1개인 것을 order by wr_good 하는 쿼리를 하고
이렇게 나온 리스트에서 다시 동일한 wr_comment 이고 wr_comment_reply 문자 갯수가 2개인 것을
order by wr_good 하는 쿼리....~~
이렇게 해서 쿼리해서 값이 없을때 까지 반복하는 코드를 만들어야 할 것 같군요
답변에 대한 댓글 1개
댓글을 작성하려면 로그인이 필요합니다.
최신댓글 을 가져오기 위해서 이게 쉽지가 않을거에요
먼저 latest skin 를 수정을 해줘야하는데 이는 공용으로 쓰는 라이브러리함수를 수정을 해줘야
해결이 될거에요. 또한 이를 조건에 따라서 호출방식이 달라질수도있구요.
하여
해당 최신글 latest 스킨을 제작의뢰 하셔야 될것같습니다.
답변에 대한 댓글 3개
그렇면
라이브러리 함수가 관련있다라는거지요
공용이라서요.. 이 함수의 기본정의는 날짜순의로 최신글을 호출하도록 정열하게 되어잇습니다.
하여 이를 원한는 정열을 처리 하기위해서는 함수를 수정을 해줘야할거에요
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인