테스트 사이트 - 개발 중인 베타 버전입니다

댓글수 카운트하기 채택완료

5년 전 조회 3,181

최신글에 글마다 댓글갯수를 구하는데 있어서

댓글에 비밀글 체크가 있어서 체크된것과 안된것을

따로 구분하여 카운트하고자 하는데

 

1. 비밀댓글수

 

 

 

2. 비밀댓글을 제외한 댓글수

 

 

 

이건 아닌것 같은데 어떻게 해야하나요??

댓글을 작성하려면 로그인이 필요합니다.

답변 3개

채택된 답변
+20 포인트

그냥 단순히 sql 명령어로 하셔도 될것 같네요.

 

</p>

<p>            if ($list[$i]['comment_cnt'])  {

            //    echo "<span class=\"lt_cmt\">".$list[$i]['wr_comment']."</span>";

            $secret_cnt = "select count(*) as cnt from `g5_write_".$list[$i]['bo_table']."` where `wr_parent` = '".$list[$i]['wr_id']."' and `wr_option` like '%secret%' ";

            $secret_cnt = sql_fetch($secret_cnt);

            $nosecret_cnt    = $list[$i]['wr_comment'] - $secret_cnt['cnt'];//원래 코멘트에서 비밀댓글 수를 뺌

            echo "<span class=\"lt_cmt\">".$secret_cnt['cnt']."</span>"; //비밀댓글 수

            echo "<span class=\"lt_cmt\">".$nosecret_cnt."</span>"; //비밀댓글이 아닌수

            }</p>

<p>

로그인 후 평가할 수 있습니다

답변에 대한 댓글 2개

감사합니다 ^^
자세히 보니 조건문 하나가 빠졌네요.
and `wr_is_comment` = '1'
이걸 추가해주세요~
$secret_cnt = "select count(*) as cnt from `g5_write_".$list[$i]['bo_table']."` where `wr_parent` = '".$list[$i]['wr_id']."' and `wr_is_comment` = '1' and `wr_option` like '%secret%' ";

위대로 하면 본문글이 비밀글일 때도 같이 카운트 1개가 늘어납니다~

댓글을 작성하려면 로그인이 필요합니다.

SQL을 통해서 구하시는게 아니라면

 

$listcnt = count($list);

$seccnt = 0;

$nseccnt = 0;

for ($i=0; $i < $listcnt; $i++)  {

    if ($list[$i]['wr_option'] == 'secret')

        $seccnt += $list[$i]['comment_cnt'];

    else

        $nseccnt +=$list[$i]['comment_cnt']; 

}

echo "비밀댓글수 : ".$seccnt."
";

echo "일반댓글수 : ".$nseccnt."
";

 

로 하셔야 할것 같습니다.

로그인 후 평가할 수 있습니다

답변에 대한 댓글 2개

네 그냥 최신글에서 출력하려는겁니다. 알려주신대로 하면 둘다 0 으로 카운트되네요. ㅜㅜ
비밀댓글수 :
<?
$row = sql_fetch("select count(*) as cnt from g5_write_free where wr_option = secret ");
echo $row[cnt];
?>

이런방법으로도 못구하고 혹시 latest.lib.php를 수정해야 하는 것일까요?

댓글을 작성하려면 로그인이 필요합니다.

list comment_cnt가 코맨트 cnt 갯수라면 php단에서 where절로 구분해서 comment_cnt , comment_hide_cnt등으로 구분해서 2개를 뽑아내서 뿌려주면 되겠네요

 

 

 

여기서 secret 비밀댓글 여부와 관계없이 comment_cnt값은 같은값일거같네요

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

네 조건과 관계없이 그냥 댓글 갯수만 출력됩니다. 현재는...

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인

전체 질문 목록

🐛 버그신고