그누보드 여분필드 추가 방법 및 추가시 "존재하지 않은 게시판 입니다." 에러 해결방법
본문
보드생성시 마다 50개 추가 할려고 하는데 생성/저장이 안됩니다. 도와주세요
그누보드 G5 1.8버전
우선 제가 여기 보다 한것은
1../adm/sql_write.sql 파일 에 10개에서 50개 추가 ----------------------------------
`wr_1` varchar(255) NOT NULL default '',
`wr_2` varchar(255) NOT NULL default '',
:
`wr_48` varchar(255) NOT NULL default '',
`wr_49` varchar(255) NOT NULL default '',
`wr_50` varchar(255) NOT NULL default '',
`wr_50` varchar(255) NOT NULL default '',
PRIMARY KEY (`wr_id`),
KEY `wr_num_reply_parent` (`wr_num`,`wr_reply`,`wr_parent`),
KEY `wr_is_comment` (`wr_is_comment`,`wr_id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
2.'board_form.php' 파일에서 ---------------------------------------------------
<section id="anc_bo_extra">
<h2 class="h2_frm">게시판 여분필드 설정</h2>
:
<caption>게시판 여분필드 설정</caption>
:
<tbody>
<?php for ($i=1; $i<=50; $i++) { ?>
<tr>
:
</div>
</section>
3.'board_form_update.php' 파일에서 ------------------------------------------------
// 분류에 & 나 = 는 사용이 불가하므로 2바이트로 바꾼다.
$src_char = array('&', '=');
$dst_char = array('&', '〓');
$bo_category_list = str_replace($src_char, $dst_char, $bo_category_list);
$sql_common = " gr_id = '{$_POST['gr_id']}',
:
bo_1_subj = '{$_POST['bo_1_subj']}',
bo_2_subj = '{$_POST['bo_2_subj']}',
bo_3_subj = '{$_POST['bo_3_subj']}',
:
bo_47_subj = '{$_POST['bo_47_subj']}',
bo_48_subj = '{$_POST['bo_48_subj']}',
bo_49_subj = '{$_POST['bo_49_subj']}',
bo_50_subj = '{$_POST['bo_50_subj']}',
bo_1 = '{$_POST['bo_1']}',
bo_2 = '{$_POST['bo_2']}',
bo_3 = '{$_POST['bo_3']}',
:
bo_47 = '{$_POST['bo_47']}',
bo_48 = '{$_POST['bo_48']}',
bo_49 = '{$_POST['bo_49']}',
bo_50 = '{$_POST['bo_50']}' ";
:
:
for ($i=1; $i<=50; $i++) {
if (is_checked('chk_grp_'.$i)) {
$grp_fields .= " , bo_{$i}_subj = '".$_POST['bo_'.$i.'_subj']."' ";
$grp_fields .= " , bo_{$i} = '".$_POST['bo_'.$i]."' ";
}
}
:
:
for ($i=1; $i<=50; $i++) {
if (is_checked('chk_all_'.$i)) {
$all_fields .= " , bo_{$i}_subj = '".$_POST['bo_'.$i.'_subj']."' ";
$all_fields .= " , bo_{$i} = '".$_POST['bo_'.$i]."' ";
}
}
4."/bbs/write.php' 파일에서 ----------------------------------------------------------
if ($w == 'u' || $w == 'r') {
if ($write['wr_id']) {
// 가변 변수로 $wr_1 .. $wr_10 까지 만든다.
for ($i=1; $i<=50; $i++) {
$vvar = "wr_".$i;
$$vvar = $write['wr_'.$i];
}
} else {
alert("글이 존재하지 않습니다.\\n삭제되었거나 이동된 경우입니다.", G5_URL);
}
}
5."/bbs/write.update.php' 파일에서 ----------------------------------------------
if ($w == 'r') {
// 답변의 원글이 비밀글이라면 비밀번호는 원글과 동일하게 넣는다.
if ($secret)
$wr_password = $wr['wr_password'];
$wr_id = $wr_id . $reply;
$wr_num = $write['wr_num'];
$wr_reply = $reply;
} else {
$wr_num = get_next_num($write_table);
$wr_reply = '';
}
$sql = " insert into $write_table
set wr_num = '$wr_num',
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_46 = '$wr_46',
wr_47 = '$wr_47',
wr_48 = '$wr_48',
wr_49 = '$wr_49',
wr_50 = '$wr_50' ";
sql_query($sql);
$wr_id = sql_insert_id();
:
:
:
$sql_ip = '';
if (!$is_admin)
$sql_ip = " , wr_ip = '{$_SERVER['REMOTE_ADDR']}' ";
$sql = " update {$write_table}
set 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}',
mb_id = '{$mb_id}',
wr_name = '{$wr_name}',
wr_email = '{$wr_email}',
wr_homepage = '{$wr_homepage}',
wr_1 = '$wr_1',
wr_2 = '$wr_2',
wr_3 = '$wr_3',
:
wr_46 = '$wr_46',
wr_47 = '$wr_47',
wr_48 = '$wr_48',
wr_49 = '$wr_49',
wr_50 = '$wr_50'
{$sql_ip}
{$sql_password}
where wr_id = '{$wr['wr_id']}' ";
sql_query($sql);
*이상입니다.
위와 같이 변경후 게시판을 만들면 "존재하지 않은 게시판 입니다." 메시지 출력 됩니다.
물론 게시판은 생성 안되구요
참고로 phpmyadmin 에 들어가 보면
보드 이름이 'x' 입니다.
g5_write_x 만 생성되었고 여분필드가 50개 생성 되어 있습니다.
답변 2
board_form.php, board_form_update.php 파일에서 추가한 부분은
g5_board 테이블에 해당 필드를 전부 추가해야 합니다.
올려 주신 내용엔 해당 내용이 빠진 것 같네요.
phpmyadmin에서 g5_board 테이블 클릭해보면 이해되실 겁니다.
그리고 저 부분은(2, 3번) 여분필드를 사용하는 데 있어서 단순히 값을 입력받는 용도라면 반드시 추가할 필요는 없습니다.
단순 여분필드만 추가 하신다고 하면, 위의 스킨이용하셔도 됩니다.
여분필드 활용까지 담긴 스킨 두가지 참조로 링크 올려 드립니다.