채택완료
슈와이 님께서 알려주신 로그 제거법을 모든 게시판에 한번에 적용하려면?
이거 한 게시판 씩 말고, 모든 게시판에 적용하는 방법 없을까요?
게시판이 몇 십개다보니....
update 테이블 set
wr_content = left(wr_content, instr( wr_content, '[이 게시물은 최고관리자님에 의해')-1)
where wr_content regexp '\\[이 게시물은.+이동 됨\\]'
답변 1개 / 댓글 2개
채택된 답변
+20 포인트
g5_board테이블에서 게시판 테이블들을 다불러와서 반복문돌려서 저 쿼리문을 찍으면될텐데요???
답변을 작성하려면 로그인이 필요합니다.
다만 게시판 테이블의 내용을 삭제하는 문제이고, 슈와이 님에 제시해주신 쿼리문을 자칫 잘못 적용하면 wr_content 내용을 다 날릴 수 있는 염려 때문에 소스를 적어봅니다.
[code]
<?php
$result = sql_query(" select bo_table from {$g5['board_table']} ");
while($row = sql_fetch_array($result)){
$wr_table = $g5['write_prefix'].$row['bo_table'];
$result2 = sql_query(" select wr_id from {$wr_table} where instr(wr_content, '[이 게시물은 최고관리자님에 의해') ");
if($result2){
while($row2 = sql_fetch_array($result2)){
//echo $wr_table.' : '.$row2['wr_id'].'<br>'; //먼저 해당 게시물만 출력되는지 확인하고 아래의 쿼리를 실행하세요.
sql_query(" update {$wr_table} set wr_content = left(wr_content, instr( wr_content, '[이 게시물은 최고관리자님에 의해')-1) where wr_content regexp '\\[이 게시물은.+이동 됨\\]' and wr_id = '{$row2['wr_id']}' ");
}
}
}
?>
[/code]