[제발~ ㅜㅜ] 코멘트의 내용중 일부를 삭제하고 싶습니다. > 그누4 질문답변

그누4 질문답변

그누보드4 관련 질문은 QA 로 이전됩니다. QA 그누보드4 바로가기
기존 게시물은 열람만 가능합니다.

[제발~ ㅜㅜ] 코멘트의 내용중 일부를 삭제하고 싶습니다. 정보

[제발~ ㅜㅜ] 코멘트의 내용중 일부를 삭제하고 싶습니다.

본문

안녕하세요...
제로보드에서 그누보드 변환하고 있는데, 초보라서 풀리지 않는 문제점을 수정중에 있습니다.

기존에 제로보드에 계층형 코멘트를 사용하였는데, 그누보드로 옮긴후에는 제로보드 계층형에 썼던 <!--4918|1--> 부분이 계층형리플 달았을경우에 생기더라구요..
이부분을 전체적으로 삭제 하고 싶은데 숫자값은 변하니 힘들거 같고, 앞부분에 <!-- 포함한 내용과 뒷에 --> 포함한 내용은 삭제하라고 명령 내려고 싶은데요.
어떻게 해야 하는지 모르겠습니다.

전에 한번 질문했는데, 바다로님이 아래처럼 하면 br을 변경시키고 본문도 바꿀수 있다고 해서...해본결과 잘 되었는데, 위처럼 계층형의 숫자가 다 틀릴경우엔...어떻게 해야 하는지 잘 모르겠습니다.
아래는 바다로님이 알려주신 변경방법인데, 알려주신 내용을 가지고 <!-- 포함한 내용과 뒷에 --> 포함한 코멘트의 내용은 삭제하라면 될거 같은데...프로그램은 전혀몰라서...진행을 못하고 있습니다.

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


─────────────────────────────────────────
바다로님의 알려주신 소스..
─────────────────────────────────────────

아래 코드는 게시판 전체에서 코멘트 중 <BR>을 줄꿈되게 하는겁니다.
본문내용중 링크수정은 where wr_is_comment = '1' 삭제하시고
찾을내용에 www.naver.com
바꿀내용에 www.sir.co.kr 처럼 넣어주시면 되겠네요
게시판 테이블중 내용 필드 전부가 변경되는거니 혹시 DB 백업하시고 작업하세요.

<?
include_once("./_common.php");

$org_content = "<BR>"; //찾을내용
$set_content = "\n"; //바꿀내용

$sql = sql_query("select * from g4_board");
while($data = sql_fetch_array($sql)){
 echo"$data[bo_table]------ok<br>"; //게시판 리스트 출력
 sql_query("update g4_write_{$data[bo_table]} set wr_content=REPLACE(`wr_content`,'$org_content','$set_content') where wr_is_comment = '1' ");
}
?>

─────────────────────────────────────────


<com_mod>1251277270|1</com_mod> 도 어떻게 해결이...안될런지요?

댓글 전체

테이블에서 일괄 삭제는 어려울 것 같고 문제 되는 부분만 수정해서 출력 시키세요
html 주석처리 표기 부분이 그대로 나오는 것으로 봐서는 < =&lt; ,  >=&gt; 로 변환 되어 저장이 된
모양이군요

view_comment.skin.php에서 for문 바로 다음 줄에 추가
$list[$i]['content']=preg_replace("/&lt;!--[0-9]+|[0-9]+--&gt;/","", $list[$i]['content']);

될 것 같은데 내용의 형태를 모르니 안될지도...
그런데.... 다 잘 되었는데,
<!--4918|1--> 사이의 |는 안없어지고, 보이구요...
하나더 수정할 부분이 있는데 아래와 같은 부분이 있어서...
<com_mod>1251277270|1</com_mod> 게 있어서...

view_comment.skin.php에서 for문 바로 다음 줄에 추가해봣는데 제가 한 부분은 안되네여
$list[$i]['content']=preg_replace("/&lt;!--[0-9]+|[0-9]+--&gt;/","", $list[$i]['content']);

제가 추가해본 부분...
$list[$i]['content']=preg_replace("/&lt;com_mod&gt;/[0-9]+|[0-9]+/&lt;/com_mod&gt;/","", $list[$i]['content']);


참고주소: http://ivdesign.asadal.com/gnuboard4/bbs/board.php?bo_table=ivdesign_freeboard&wr_id=5984&page=3

코멘트 글자앞에 |가 보여요
테스트를 해보지 못해서 실수를 했습니다
$list[$i]['content']=preg_replace("/&lt;!--[0-9]+\|[0-9]+--&gt;/","", $list[$i]['content']);
중간 부분 | 를 \| 로 수정 하세요

추가 질문은
$list[$i]['content']=preg_replace("/&lt;com_mod&gt;[0-9]+\|[0-9]+&lt;\/com_mod&gt;/","", $list[$i]['content']);

이렇게 하면 될겁니다
전체 64 |RSS
그누4 질문답변 내용 검색

회원로그인

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