댓글수정이 새로운 댓글로 입력됩니다.

댓글수정이 새로운 댓글로 입력됩니다.

QA

댓글수정이 새로운 댓글로 입력됩니다.

본문

댓글을 수정하면 새로운 댓글로 입력됩니다.

 

/bbs/write_comment_update.php는 손도 안댔고, view_comment.skin.php에 블라인드 댓글 처리부분만 만들어 넣었습니다.

 

제가 수정한 부분은 9-17, 27, 47-51줄 입니다.

고수님들 도움을 부탁드립니다.

 


<section id="bo_vc">
    <h2>댓글목록</h2>
    <?php
    $cmt_amt = count($list);
    for ($i=0; $i<$cmt_amt; $i++) {
        $comment_id = $list[$i]['wr_id'];
        $cmt_depth = ""; // 댓글단계
        $cmt_depth = strlen($list[$i]['wr_comment_reply']) * 20;
        $cond_vc = $blind_msg = '';
        if ($list[$i]['wr_blind']=='blind') {
            $list[$i]['is_reply'] = $list[$i]['is_edit'] = '';
            $cond_vc = ' class="blind_vc" ';
            if (!$is_admin) {
                $list[$i]['is_del'] = '';
                $blind_msg = '블라인드 처리된 댓글입니다.';
            }
        }
        $comment = $list[$i]['content'];
        /*
        if (strstr($list[$i]['wr_option'], "secret")) {
            $str = $str;
        }
        */
        $comment = preg_replace("/\[\<a\s.*href\=\"(http|https|ftp|mms)\:\/\/([^[:space:]]+)\.(mp3|wma|wmv|asf|asx|mpg|mpeg)\".*\<\/a\>\]/i", "<script>doc_write(obj_movie('$1://$2.$3'));</script>", $comment);
        $cmt_sv = $cmt_amt - $i + 1; // 댓글 헤더 z-index 재설정 ie8 이하 사이드뷰 겹침 문제 해결
    ?>
    <article id="c_<?php echo $comment_id ?>" <?php echo $cond_vc; if ($cmt_depth) { ?>style="margin-left:<?php echo $cmt_depth ?>px;border-top-color:#e0e0e0"<?php } ?>>
        <header style="z-index:<?php echo $cmt_sv; ?>">
            <h1><?php echo get_text($list[$i]['wr_name']); ?>님의 댓글</h1>
            <?php echo $list[$i]['name'] ?>
            <?php if ($cmt_depth) { ?><img src="<?php echo $board_skin_url ?>/img/icon_reply.gif" class="icon_reply" alt="댓글의 댓글"><?php } ?>
            <?php if ($is_ip_view) { ?>
            아이피
            <span class="bo_vc_hdinfo"><?php echo $list[$i]['ip']; ?></span>
            <?php } ?>
            작성일
            <span class="bo_vc_hdinfo"><time datetime="<?php echo date('Y-m-d\TH:i:s+09:00', strtotime($list[$i]['datetime'])) ?>"><?php echo $list[$i]['datetime'] ?></time></span>
            <?php
            include(G5_SNS_PATH.'/view_comment_list.sns.skin.php');
            ?>
        </header>
 
        <!-- 댓글 출력 -->
        <p>
            <?php if (strstr($list[$i]['wr_option'], "secret")) { ?><img src="<?php echo $board_skin_url; ?>/img/icon_secret.gif" alt="비밀글"><?php } ?>
            <?php 
            if ($blind_msg)
                echo $blind_msg;
            else 
                echo $comment;
            ?>
        </p>
 
        <span id="edit_<?php echo $comment_id ?>"></span><!-- 수정 -->
        <span id="reply_<?php echo $comment_id ?>"></span><!-- 답변 -->
 
        <input type="hidden" value="<?php echo strstr($list[$i]['wr_option'],"secret") ?>" id="secret_comment_<?php echo $comment_id ?>">
        <textarea id="save_comment_<?php echo $comment_id ?>" style="display:none"><?php echo get_text($list[$i]['content1'], 0) ?></textarea>
 
        <?php if($list[$i]['is_reply'] || $list[$i]['is_edit'] || $list[$i]['is_del']) {
            $query_string = str_replace("&", "&", $_SERVER['QUERY_STRING']);
 
            if($w == 'cu') {
                $sql = " select wr_id, wr_content from $write_table where wr_id = '$c_id' and wr_is_comment = '1' ";
                $cmt = sql_fetch($sql);
                $c_wr_content = $cmt['wr_content'];
            }
 
            $c_reply_href = './board.php?'.$query_string.'&c_id='.$comment_id.'&w=c#bo_vc_w';
            $c_edit_href = './board.php?'.$query_string.'&c_id='.$comment_id.'&w=cu#bo_vc_w';
        ?>
        <footer>
            <ul class="bo_vc_act">
                <?php if ($list[$i]['is_reply']) { ?><li><a href="<?php echo $c_reply_href; ?>" onclick="comment_box('<?php echo $comment_id ?>', 'c'); return false;">답변</a></li><?php } ?>
                <?php if ($list[$i]['is_edit']) { ?><li><a href="<?php echo $c_edit_href; ?>" onclick="comment_box('<?php echo $comment_id ?>', 'cu'); return false;">수정</a></li><?php } ?>
                <?php if ($list[$i]['is_del'])  { ?><li><a href="<?php echo $list[$i]['del_link']; ?>" onclick="return comment_delete();">삭제</a></li><?php } ?>
            </ul>
        </footer>
        <?php } ?>
    </article>
    <?php } ?>
    <?php if ($i == 0) { //댓글이 없다면 ?>
        <p id="bo_vc_empty">등록된 댓글이 없습니다.</p>
    <?php } ?>
 
 
</section>

이 질문에 댓글 쓰기 :

답변 3

스킨 자체 문제입니다...

 

댓글쓸때 비밀글 기능이 빠져있을경우 생기는 현상입니다.

댓글 적는부분에서 원본 스킨 보고 비밀댓글 기능 추가 해보신후 다시 해보세요.

언젠가부터 댓글수정이 이번에는 답변댓글로 입력됩니다.
분명 답변에 따라 비밀글 처리를 변경하고는 댓글수정이 정상적으로 이뤄지는 걸 확인했는데, 어느순간 확인해 보니 이번에는 답변댓글 입력이 되네요.
혹시 이런 현상에 대해서는 아시는 바가 있으신지, 도움 부탁드립니다.

찾았습니다.
댓글 입력에 write_comment_update.head.skin.php을 만들었는데, 이걸 비활성화 하니까 해결되네요.
해당 파일안에서 어떤 코드가 문제를 일으키는지 찾아봐야겠네요.
채택도 없는 질문에 답변 주셔서 정말 감사합니다.

저도 같은 경험으로 고생좀 했는데 저의 경우는...

view_comment.skin.php 파일 중간쯤

...

<input type="hidden" name="w" value="<?php echo $w ?>" id="w">

... 이 값이 수정버튼을 클릭하면 아래 스크립트에서 'cu'로 변경 시켜 줍니다

 

<script>

function comment_box(comment_id, work) {
  ...
          document.getElementById('w').value = work;
  ...
}

</script>

그런데 문제는 이 값이 변경이 안되는 겁니다.

원인은 include한 파일중에서 "w"란 id로 또 다른 오브젝트가 존재했기 때문이었지요 

제 경우에는 특정 input값을 주석처리해서 그런 현상이 나타나네요.

view_comment.skin.php 에서는 주석처리가 아닌 숨김처리(display:none)로 해야 할 것 같습니다.

답변을 작성하시기 전에 로그인 해주세요.
전체 123,673 | RSS
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT