삭제된 댓글 표시 할 때요

삭제된 댓글 표시 할 때요

QA

삭제된 댓글 표시 할 때요

본문

 
안녕하세요?
 
댓글이 그냥 삭제되서 없어져 버리면 얘기 하던 사람들이 혼란 스럽고 꼬이게 되서요
 
삭제된 댓글에 '삭제된 댓글입니다.' 이렇게 표시를 하고자 합니다
 
검색을 해보니 그누보드4용으로 수정하신 분이 계시더라구요
 
 
그래서 g4를 g5로 바꿨더니 에러가 출력됩니다.
 
comment_delete.php 메서 sql 쿼리를 수정하셨더라구요
 
이게 g5에서 작동하려면 어떻게 해야 할까요? db칼럼들 다 찾아봤는데 어디서 에러인지 알지를 못하겠습니다.
 
도움좀 부탁드립니다 감사합니다.
 
delete_comment.php

<?php
// 코멘트 삭제
include_once('./_common.php');
if ($is_admin)
{
    if (!($token && get_session("ss_delete_token") == $token))
        alert('토큰 에러로 삭제 불가합니다.');
}
// 4.1
@include_once($board_skin_path.'/delete_comment.head.skin.php');
$write = sql_fetch(" select * from {$write_table} where wr_id = '{$comment_id}' ");
if (!$write['wr_id'] || !$write['wr_is_comment'])
    alert('등록된 코멘트가 없거나 코멘트 글이 아닙니다.');
if ($is_admin == 'super') // 최고관리자 통과
    ;
else if ($is_admin == 'group') { // 그룹관리자
    $mb = get_member($write['mb_id']);
    if ($member['mb_id'] == $group['gr_admin']) { // 자신이 관리하는 그룹인가?
        if ($member['mb_level'] >= $mb['mb_level']) // 자신의 레벨이 크거나 같다면 통과
            ;
        else
            alert('그룹관리자의 권한보다 높은 회원의 코멘트이므로 삭제할 수 없습니다.');
    } else
        alert('자신이 관리하는 그룹의 게시판이 아니므로 코멘트를 삭제할 수 없습니다.');
} else if ($is_admin == 'board') { // 게시판관리자이면
    $mb = get_member($write['mb_id']);
    if ($member['mb_id'] == $board['bo_admin']) { // 자신이 관리하는 게시판인가?
        if ($member['mb_level'] >= $mb['mb_level']) // 자신의 레벨이 크거나 같다면 통과
            ;
        else
            alert('게시판관리자의 권한보다 높은 회원의 코멘트이므로 삭제할 수 없습니다.');
    } else
        alert('자신이 관리하는 게시판이 아니므로 코멘트를 삭제할 수 없습니다.');
} else if ($member['mb_id']) {
    if ($member['mb_id'] != $write['mb_id'])
        alert('자신의 글이 아니므로 삭제할 수 없습니다.');
} else {
    if (sql_password($wr_password) != $write['wr_password'])
        alert('비밀번호가 틀립니다.');
}
$len = strlen($write['wr_comment_reply']);
if ($len < 0) $len = 0;
$comment_reply = substr($write['wr_comment_reply'], 0, $len);
$sql = " select count(*) as cnt from {$write_table}
            where wr_comment_reply like '{$comment_reply}%'
            and wr_id <> '{$comment_id}'
            and wr_parent = '{$write[wr_parent]}'
            and wr_comment = '{$write[wr_comment]}'
            and wr_is_comment = 1 ";
$row = sql_fetch($sql);
if ($row['cnt'] && !$is_admin)
    alert('이 코멘트와 관련된 답변코멘트가 존재하므로 삭제 할 수 없습니다.');
// 코멘트 포인트 삭제
if (!delete_point($write['mb_id'], $bo_table, $comment_id, '댓글'))
    insert_point($write['mb_id'], $board['bo_comment_point'] * (-1), "{$board['bo_subject']} {$write['wr_parent']}-{$comment_id} 댓글삭제");
// 코멘트 삭제
sql_query(" delete from {$write_table} where wr_id = '{$comment_id}' ");
// 코멘트가 삭제되므로 해당 게시물에 대한 최근 시간을 다시 얻는다.
$sql = " select max(wr_datetime) as wr_last from {$write_table} where wr_parent = '{$write['wr_parent']}' ";
$row = sql_fetch($sql);
// 원글의 코멘트 숫자를 감소
sql_query(" update {$write_table} set wr_comment = wr_comment - 1, wr_last = '{$row['wr_last']}' where wr_id = '{$write['wr_parent']}' ");
// 코멘트 숫자 감소
sql_query(" update {$g5['board_table']} set bo_count_comment = bo_count_comment - 1 where bo_table = '{$bo_table}' ");
// 새글 삭제
sql_query(" delete from {$g5['board_new_table']} where bo_table = '{$bo_table}' and wr_id = '{$comment_id}' ");
// 사용자 코드 실행
@include_once($board_skin_path.'/delete_comment.skin.php');
@include_once($board_skin_path.'/delete_comment.tail.skin.php');
delete_cache_latest($bo_table);
goto_url('./board.php?bo_table='.$bo_table.'&wr_id='.$write['wr_parent'].'&page='.$page. $qstr);
?>
코멘트 삭제부터 새글삭제까지 주석처리 하고 다음 코드를 넣으라고 해서 g4를 g5로 변경했더니
 
$subtext="삭제된 댓글입니다.";  
//새댓글  
sql_query(" update $write_table set wr_content = '$subtext', mb_id = '', wr_name = '' where wr_id = '$comment_id' ");  
// 새글  
sql_query(" update $g4[board_new_table] set wr_content = '$subtext', wr_subject = '$subtext', mb_id = '', wr_name = '' where bo_table = '$bo_table' and wr_id = '$comment_id' ");  
 
 
삭제확인 창 뜬 후에 다음의 에러문이 출력됩니다.
 
update g5_board_new set wr_content = '삭제된 댓글입니다.', wr_subject = '삭제된 댓글입니다.', mb_id = '', wr_name = '' where bo_table = 'test' and wr_id = '34'
1054 : Unknown column 'wr_content' in 'field list'
error file : /g5b/bbs/delete_comment.php
 
그런데 해당 페이지로 다시 들어가면 삭제된 댓글입니다로 표시가 됩니다.
 
복잡한 이야기 잘 들어 주셔서 정말 감사합니다.
 
 

이 질문에 댓글 쓰기 :

답변 1

g5_board_new 테이블 스키마가 변경된 것 같네요..

아랫 부분은 아예 삭제하셔도 될 것 같습니다.

sql_query(" update 
$g4[board_new_table] set wr_content = '$subtext', wr_subject = 
'$subtext', mb_id = '', wr_name = '' where bo_table = '$bo_table' and 
wr_id = '$comment_id' "); 


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

회원로그인

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