댓글수 카운트하기
본문
최신글에 글마다 댓글갯수를 구하는데 있어서
댓글에 비밀글 체크가 있어서 체크된것과 안된것을
따로 구분하여 카운트하고자 하는데
1. 비밀댓글수
<?php if ($list[$i]['wr_option'] == "secret") { ?>
<?php echo $list[$i]['comment_cnt']; ?>
<? } ?>
2. 비밀댓글을 제외한 댓글수
<?php if (!$list[$i]['wr_option'] == "secret") { ?>
<?php echo $list[$i]['comment_cnt']; ?>
<? } ?>
이건 아닌것 같은데 어떻게 해야하나요??
답변 3
그냥 단순히 sql 명령어로 하셔도 될것 같네요.
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>"; //비밀댓글이 아닌수
}
list comment_cnt가 코맨트 cnt 갯수라면 php단에서 where절로 구분해서 comment_cnt , comment_hide_cnt등으로 구분해서 2개를 뽑아내서 뿌려주면 되겠네요
<?php if ($list[$i]['wr_option'] != "secret") { ?>
<?php echo $list[$i]['comment_cnt']; ?>
<? } ?>
여기서 secret 비밀댓글 여부와 관계없이 comment_cnt값은 같은값일거같네요
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."<BR>";
echo "일반댓글수 : ".$nseccnt."<BR>";
로 하셔야 할것 같습니다.