테스트 사이트 - 개발 중인 베타 버전입니다

1265 : Data truncated for column 'wr_option' at row 1

· 10년 전 · 7212
DB서버 버전이나 환경설정에 따라 이런 에러가 나는경우
해결책을 찾아보니 대개 my.cnf 를 수정하거나 필드값을 TEXT로 바꾸는 힌트가 있어서
적용할까 하다가 DB 환경설정을 바꾸지 못하는 계정이나 필드속성은 게시판을 추가로 생성하게 될때 등(물론 게시판 생성 sql 문을 수정하면 되지만) 추가고려사항들이 있어서 문제가 되는 쿼리부분을 수정했습니다.

수정파일 : /bbs/write_update.php
문제가 되는 쿼리는 wr_option 필드 속성이 set 으로 되어있는데,
insert, update 시에 wr_option = '$html,$secret,$mail', 아래와 같이 입력되어
wr_option = 'html1,,', 와 같이 값이 없는 부분에 ,, 가 들어가는 형태가 됩니다.
그래서 아래와 같이 수정했습니다.

insert / update 쿼리 전에
// Mysql 버전에 따라 html1,, 와 같이 입력되면 오류남
if($html) $opt[] = $html;
if($secret) $opt[] = $secret;
if($mail) $opt[] = $mail;
$wr_option = implode(",",$opt);

위와 같이 처리해서 빈값이 들어가는 것을 방지하고,

insert / update 는 wr_option = '$wr_option', 형식으로 처리했습니다.

수정된 파일은 첨부해두었습니다.

댓글 작성

댓글을 작성하시려면 로그인이 필요합니다.

로그인하기

게시글 목록

번호 제목
34292
34279
34278
34264
34251
34231
34196
34184
34166
34151
34143
34142
34134
34132
34131
34125
34093
34076
34060
34031