게시글 복사 - 시즌3 (유유버전)
본문
c게시판(필드 150개) 을 d게시판(필드 150개) 으로 복사해야 해서
move_update.php 에서 늘렸습니다.
그런데 이제 늘리지 않은 a게시판을 b게시판으로 복사하려니 애러가 나네요
이제 알게 된거지만 당연히 안되는 거더군요,,,이미 move_update.php 에서 늘렸으니 말입니다.
그래서 방법이 없을지 질문을 드렸더니
게시글 복사관련 제로나라님께서 이렇게 답변을 주셨는데요,,,
http://sir.kr/qa/125470?stx=%EB%B3%B5%EC%82%AC&sst=wr_num&page=1&unanswered=0&s_tag=
현재 사이트 환경상 답변처럼 하기는 무리가 따르네요.,
이어 제윤아빠님께서
이렇게 답변을 주셨는데
나에 능력상 이해가 어렵네요,,,유유
혹시 이런 상황에서 적절한 방법이 없을까요?
혹은 쉬운방법 좀 없을까요?
혹시
a 또는 b 게시판 복사(베이직의 기본 10개필드)일때는
move_update2.php 내용으로 하라! 이런 식으로 처리해줄 수 없을까요?
가능하다면 move.php의 아래내용을 어떻게 하면 될까요?
if (!check) {
alert('게시물을 '+f.act.value+'할 게시판을 한개 이상 선택해 주십시오.');
return false;
}
document.getElementById('btn_submit').disabled = true;
f.action = './move_update.php';
return true;
}
</script>
답변 1
<?php
$sql = " SHOW COLUMNS FROM ".$g5['write_prefix'].$bo_table." LIKE 'wr_11' "; //wr_11 이 있는지 확인
$row = sql_fetch($sql);
if(empty($row)) { //값이 없을 때
?>
f.action = './move_update.php';
<?
} else {
?>
f.action = './move_update2.php';
<?
}
?>
그리고
1번 게시판은 wr_10 까지 있고
2번 게시판은 wr_30 까지 있다고 할때
2번게시판에서 1번게시판으로 복사를 하면 wr_20~wr_30 까지 가 날아가게 되니까
헤다 업데이트 페이지 에다가
alter 를 사용해서 추가해도 될 것 같은데요
update page에서 일단 컬럼을 검사하고
for($i=1; $i<31; $i++){
$sql = " SHOW COLUMNS FROM ".$g5['write_prefix'].$bo_table." LIKE 'wr_".$i."' "; //wr_$i 가 있는지 확인
$row = sql_fetch($sql);
if(empty($row)) {
$wr_pre = "wr_".($i-1);
$sql2 = " ALTER TABLE `".$g5['write_prefix'].$bo_table."` ADD wr_".$i." varchar(255) NOT NULL AFTER `".$wr_pre."` ";
}
}