게시판 추가버튼을 누르면 이런 에러가 뜨는데요
본문
관리자페이지에서 게시판을 추가하면 이렇게 에러가 뜨네요
ALTER TABLE `g5_board` ADD `bo_use_captcha` TINYINT NOT NULL DEFAULT '0' AFTER `bo_use_sns`
1060 : Duplicate column name 'bo_use_captcha'
error file : /adm/board_form.php
해당DB에는 bo_use_captcha 필드가 있구요. 있는데 또 만들려니까 이런 에러가 나나본데...
$board 변수나 배열은 아무것도 안나오네요.
이 페이지에관해서 아무것도 안건드렸는데;;;혹시 저와같은 증상이신분 계신지요?
board_form.php 에서
80번째줄
if (!isset($board['bo_use_captcha'])) {
sql_query(" ALTER TABLE `{$g5['board_table']}` ADD `bo_use_captcha` TINYINT NOT NULL DEFAULT '0' AFTER `bo_use_sns` ");
}
이부분을 그냥 주석처리해서 쓰고 있는데, 어떤 기능을 하는건지요?
답변 3
구버젼 보드 테이블에 캡챠 필드가 없을 경우 필드를 추가하라는 쿼리입니다.
if (!isset($board['bo_use_captcha'])) {
@sql_query(" ALTER TABLE `{$g5['board_table']}` ADD `bo_use_captcha` TINYINT NOT NULL DEFAULT '0' AFTER `bo_use_sns` ");
}
쿼리 앞에 @를 붙여주면 에러는 무시합니다.
다른 윗출 쿼리문에는
sql_query ("alter table .... 생략 ..." , false);
를 넣어서 에러가 안나는데
이거 캡챠 부분만 false 를 안넣은 이유가 있나요??
해당에러부분에 , false 넣어서 일단 쓰고 있습니다. 다른곳에 영향이 갈만한 부분인가요?
게시판 생성은 잘되는데...흐음
그누보드 최신버전입니다. 다른분들은 잘쓰고 계신건가요?
그 부분은 자동글쓰기를 방지하기 위한 캡챠 부분입니다.
그 파일 보니 다음 처럼 설명이 되어 있네요.
체크하면 글 작성시 캡챠를 무조건 사용합니다.( 회원 + 비회원 모두 )<br>미 체크하면 비회원에게만 캡챠를 사용합니다.
그 부분이 필요하시면 phpMyAdmin 등으로 DB에 들어 가셔서
g5_board 테이블을 최적화 또는 복구를 해 보세요.
그리고 board_form.php 새걸로 다시 올려 시도해 보시죠.