새글 등록 시 다른 게시판에 그대로 동시 등록하기
게시판에 글을 등록했을 때 입력한 내용 그대로 특정 게시판에 복사하는 방법입니다.
- 첨부된 파일은 지원하지 않습니다. (나중에 보완해놓겠습니다.)
- 원글을 수정하거나 삭제해도 복사 게시판에 등록된 글은 반영되지 않습니다.
사용 방법
스킨 폴더에 write_update.skin.php 파일을 새로 추가하고 내용은 아래에 있는 내용 전체 코드를 그대로 입력
이미 파일이 있다면 if ($w =='') { 여기서부터 입력
적용하기 전 반드시 이 부분 수정하세요. (새글을 쓰는 기존 게시판이 아닌 복사되는 게시판입니다.)
게시판이 존재하는지 체크하는 부분은 넣지 않았으니 꼭 게시판을 미리 생성하고 하세요.
$table_copy = "test"; // 복사 게시판id
특정 게시판에만 적용하고 싶으면
if ($w =='')
여기를 이렇게 수정 (복사 게시판이 아니라 새글을 쓰는 기존 게시판입니다.)
if ($w =='' && $bo_table =='기존게시판id')
특정 게시판에만 적용하는 건 복사 기능이 추가된 스킨 폴더를 하나 더 만들어서 관리하는 방법도 있습니다.
내용 전체 코드
<?php
if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
if ($w =='')
{
$table_copy = "test"; // 복사 게시판id
$write_table_copy = $g5['write_prefix'] . $table_copy;
$wr_num_copy = get_next_num($write_table_copy);
$sql_copy = " insert into $write_table_copy
set wr_num = '$wr_num_copy',
wr_reply = '$wr_reply',
wr_comment = 0,
ca_name = '$ca_name',
wr_option = '$html,$secret,$mail',
wr_subject = '$wr_subject',
wr_content = '$wr_content',
wr_link1 = '$wr_link1',
wr_link2 = '$wr_link2',
wr_link1_hit = 0,
wr_link2_hit = 0,
wr_hit = 0,
wr_good = 0,
wr_nogood = 0,
mb_id = '{$member['mb_id']}',
wr_password = '$wr_password',
wr_name = '$wr_name',
wr_email = '$wr_email',
wr_homepage = '$wr_homepage',
wr_datetime = '".G5_TIME_YMDHIS."',
wr_last = '".G5_TIME_YMDHIS."',
wr_ip = '{$_SERVER['REMOTE_ADDR']}',
wr_1 = '$wr_1',
wr_2 = '$wr_2',
wr_3 = '$wr_3',
wr_4 = '$wr_4',
wr_5 = '$wr_5',
wr_6 = '$wr_6',
wr_7 = '$wr_7',
wr_8 = '$wr_8',
wr_9 = '$wr_9',
wr_10 = '$wr_10' ";
sql_query($sql_copy);
$wr_id_copy = sql_insert_id();
// 부모 아이디에 UPDATE
sql_query(" update $write_table_copy set wr_parent = '$wr_id_copy' where wr_id = '$wr_id_copy' ");
// 새글 INSERT
sql_query(" insert into {$g5['board_new_table']} ( bo_table, wr_id, wr_parent, bn_datetime, mb_id ) values ( '{$table_copy}', '{$wr_id_copy}', '{$wr_id_copy}', '".G5_TIME_YMDHIS."', '{$member['mb_id']}' ) ");
// 게시글 1 증가
sql_query("update {$g5['board_table']} set bo_count_write = bo_count_write + 1 where bo_table = '{$table_copy}'");
// 복사게시판 최신글 캐시갱신
delete_cache_latest($table_copy);
}
?>