채택완료

댓글 단 사람을 확인하여 진행상황 표시?

Copy
<td class="td_comment" style="text-align:center; padding:0; width:100px;">
                <?php if ($list[$i]['comment_cnt']) { ?>
                    <span class="btn_complete" style="background:red; color:#fff; padding:5px 10px;"> 답변완료</span>
                <?php } else { ?>
                    <?php if ($is_admin == 'super') { ?>
                        <a href="board.php?bo_table=<?php echo $bo_table ?>&wr_id=<?php echo $list[$i]['wr_id']; ?>#wr_content" class="btn_pending"> <span style="background:#3c95d5; color:#fff; padding:5px 15px;">검토중</span></a>
                    <?php } else { ?>
                        <script>
                            function showMessage() {
                                alert("관리자만 답변이 가능합니다.");
                            }
                        </script>
                        <a href="#" onclick="showMessage()" class="btn_pending"> 상담대기</a>
                    <?php } ?>
                <?php } ?>
            </td>

 

현재 이런 코드가 있는데요

 

글 목록에서 글 안에 댓글이 달려있으면 답변완료, 아니면 검토중으로 표시되는 기능입니다.

 

그런데 댓글이 달려있으면 무조건 답변완료가 되다보니까

 

관리자가 아닌 회원이 댓글을 달아도 답변완료가 되더라구요

 

관리자가 단 댓글만 확인하여 답변완료 시킬 수 있을까요?

|

답변 2개 / 댓글 6개

채택된 답변
+20 포인트

잘 될지 안 될지는 모르겠어요. 한번 테스트 해보세요.

Copy
<style>
.td_comment {text-align:center; padding:0; width:100px;}
.td_comment .btn_complete {background:red; color:#fff; padding:5px 10px;}
.td_comment .oncheck {background:#3c95d5; color:#fff; padding:5px 15px;}
</style>

<?php
// 관리자가 남긴 댓글 개수
$sql = "SELECT COUNT(*) AS cnt 
        FROM {$g5['write_prefix']}{$bo_table} 
        WHERE wr_parent = '{$list[$i]['wr_id']}' 
          AND mb_id = '관리자아이디' 
          AND wr_is_comment = 1";
$row = sql_fetch($sql);
$list[$i]['comment_cnt'] = $row['cnt'];
?>

<td class="td_comment">
    <?php if ($list[$i]['comment_cnt']) { ?>
        <span class="btn_complete"> 답변완료</span>
    <?php } else { ?>
        <?php if ($is_admin == 'super') { ?>
            <a href="board.php?bo_table=<?php echo $bo_table ?>&wr_id=<?php echo $list[$i]['wr_id']; ?>#wr_content" class="btn_pending oncheck">검토중</a>
        <?php } else { ?>
            <a href="#" onclick="alert('관리자만 답변이 가능합니다.')" class="btn_pending"> 상담대기</a>
        <?php } ?>
    <?php } ?>
</td>

답변에 대한 댓글 4개

오 너무 감사합니다! 해보니까 완전 잘되네요 감사합니다!
PS. 클릭 후 스크롤 위로 이동하는 현상 막는 방법들

<a href="#" onclick="alert('관리자만 답변 가능합니다.'); return false;" class="btn_pending">상담대기</a>

<a href="javascript:void(0)" onclick="alert('관리자만 답변 가능합니다.')" class="btn_pending">상담대기</a>

<button type="button" onclick="alert('관리자만 답변 가능합니다.')" class="btn_pending">상담대기</button>

<a href="#" class="btn_pending" id="btn1">상담대기</a>
<script>
document.getElementById('btn1').addEventListener('click', function(e){
e.preventDefault(); // 링크 이동 막기
alert('관리자만 답변 가능합니다.');
});
</script>
PS. 관리자 여러 명 경우
AND mb_id IN ('관리자1', '관리자2', '관리자3')
오 진짜 감사합니다 ㅠㅠ 친절하게 이런 설명까지

상태값 필드는 뭘로 지정했는지를 알아야되요 

답변완료, 검토중 을 표현할때 쿼리에다가 반영하려면 좀 알아야합니다

답변에 대한 댓글 2개

상태값 필드가 뭘 말하는걸까요? 잘 몰라서 그럽니다 ㅠㅠ

일단 $list[$i]['comment_cnt'] 이걸 보면 코멘트가 있으면 if 문인거 같아요

나머지는 건드린게 없고 기본입니다

밑에 else 문의 경우 관리자일땐 클릭하면 댓글 작성 화면으로 가고 아니면 alert 출력
다행입니다. 신비님 도움으로 해결하셨군요

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