비밀댓글 보기 수정관련
본문
원 댓글의 작성자가 비밀글로 달리는 대댓글 보기설정에 대한
다른분의 해결글을 참고하여 수정해보았습니다만
그누버전이 g5-5.0b07버전을 기준으로 작성된거라서인지 해봤는데 잘 안되네요..
http://sir.kr/g5_tip/1088 (해결글)
===> 수정내용
bbs/view_comment.php 의 아래 구문을 (g5-5.0b07버전을 기준으로 44~52행)
$list[$i]['content'] = $list[$i]['content1']= '비밀글 입니다.';
if (!strstr($row['wr_option'], 'secret') ||
$is_admin ||
($write['mb_id']==$member['mb_id'] && $member['mb_id']) ||
($row['mb_id']==$member['mb_id'] && $member['mb_id'])) {
$list[$i]['content1'] = $row['wr_content'];
$list[$i]['content'] = conv_content($row['wr_content'], 0, 'wr_content');
$list[$i]['content'] = search_font($stx, $list[$i]['content']);
}
아래처럼 수정하라 되어있습니다만....
///답댓글의 비밀글을 원댓글쓴이에게 보이기. 추가 ★★★★★★
$pre_comment_info = substr($row['wr_comment_reply'],0,-1);
$pre_comment = sql_fetch(" select mb_id from {$write_table} where wr_parent = '{$wr_id}' and wr_is_comment = 1 and wr_comment = '{$row['wr_comment']}' and wr_comment_reply = '{$pre_comment_info}' ");
$list[$i]['content'] = $list[$i]['content1']= '비밀글 입니다.';
if (!strstr($row['wr_option'], 'secret') ||
$is_admin ||
($pre_comment['mb_id']==$member['mb_id'] && $member['mb_id']) || ///답댓글의 비밀글을 원댓글쓴이에게 보이기. 추가 ★★★★★★
($write['mb_id']==$member['mb_id'] && $member['mb_id']) ||
($row['mb_id']==$member['mb_id'] && $member['mb_id'])) {
$list[$i]['content1'] = $row['wr_content'];
$list[$i]['content'] = conv_content($row['wr_content'], 0, 'wr_content');
$list[$i]['content'] = search_font($stx, $list[$i]['content']);
}
현제 사용중인 그누소스는 버전이 틀려서 안되네요..
아래 소스에서는 어떻게 수정해야 하올른지요
$list[$i]['content'] = $list[$i]['content1']= '비밀글 입니다.';
if (!strstr($row['wr_option'], 'secret') ||
$is_admin ||
($write['mb_id']==$member['mb_id'] && $member['mb_id']) ||
($row['mb_id']==$member['mb_id'] && $member['mb_id'])) {
$list[$i]['content1'] = $row['wr_content'];
$list[$i]['content'] = conv_content($row['wr_content'], 0, 'wr_content');
$list[$i]['content'] = search_font($stx, $list[$i]['content']);
} else {
$ss_name = 'ss_secret_comment_'.$bo_table.'_'.$list[$i]['wr_id'];
if(!get_session($ss_name))
$list[$i]['content'] = '<a href="./password.php?w=sc&bo_table='.$bo_table.'&wr_id='.$list[$i]['wr_id'].$qstr.'" class="s_cmt">댓글내용 확인</a>';
else {
$list[$i]['content'] = conv_content($row['wr_content'], 0, 'wr_content');
$list[$i]['content'] = search_font($stx, $list[$i]['content']);
}
}
$list[$i]['datetime'] = substr($row['wr_datetime'],2,14);
고수님들의 조언 부탁 좀 드리겠습니다
답변 2
$list[$i]['content'] = $list[$i]['content1']= '비밀글 입니다.';
if (!strstr($row['wr_option'], 'secret') ||
$is_admin ||
((($write['mb_id']==$member['mb_id']) || ($row['mb_id']==$member['mb_id'])) && $member['mb_id'])) {
$list[$i]['content1'] = $row['wr_content'];
$list[$i]['content'] = conv_content($row['wr_content'], 0, 'wr_content');
$list[$i]['content'] = search_font($stx, $list[$i]['content']);
} else {
$ss_name = 'ss_secret_comment_'.$bo_table.'_'.$list[$i]['wr_id'];
if(!get_session($ss_name))
$list[$i]['content'] = '<a href="./password.php?w=sc&bo_table='.$bo_table.'&wr_id='.$list[$i]['wr_id'].$qstr.'" class="s_cmt">댓글내용 확인</a>';
else {
$list[$i]['content'] = conv_content($row['wr_content'], 0, 'wr_content');
$list[$i]['content'] = search_font($stx, $list[$i]['content']);
}
}
$list[$i]['datetime'] = substr($row['wr_datetime'],2,14);
정확한 오류에 대한 부분은 언급이 되지 않은거 같아서 일단 보여지는 부분에 $member['mb_id']를 중복으로 검색하는 부분이 있어서 하나로 합쳐보았습니다.
오류가 되는 부분은 if문에 걸린 부분에 장애로 보여집니다.
!-->플라이님 답글 감사합니다..
근데. 말씀하신대로 적용했습니다만..
관리자의 특정게시물상 하단에
회원이 비밀댓글을 쓰고 그 댓글에 관리자가 비밀답글을 달았는데..
댓글 원작성자가 관리자의 댓글열람이 안되고 비번입력을 요구합니다..
제가 설명을 잘못한건지, ^^;;
한번더 부탁드려봅니다 ^^