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

여분필드가 일정갯수 이상 추가되지 않을때... 채택완료

김호랑 6년 전 조회 2,925

여분필드가 일정갯수 이상 추가되지 않을때...

 

 

참고 : 여분필드 77개 이상 추가되지 않을때 https://sir.kr/g4_tiptech/34279

우선 위 링크의 게시글을 보고 혹시나 하는 마음에 시도는 해봤습니다.

결과론으로 따져보면, MySQL 버전 5.0.3 이후에서 varchar 값이 0~65,535의 값을 가진다라고 되어 있더라고여.  그래서 list.skin.php 내용에서  ALTER TABLE $g4[write_prefix]$bo_table ADD wr_{$di} VARCHAR(65535) NOT NULL  이렇게 넣으니까 여분필드가 76개까지 만들어지던것이 100개 이상 만들어지더군요.  이것에 대해서 그누보드 질문답변 게시판에서도 명확한 답변이 없어 직접 찾아봤습니다.  varchar(255) 를 실제로 phpmyadmin 에서 살펴보니 varchar(255) 로 나오고,  varchar(65535) 이렇게 해놓았더니 mediumtext 로 나오더군요.  혹시 저 처럼 헤매시는분이 계실까봐 올려봅니다.  참고로, mediumtext = 16Mib, longtext = 4GiB 입니다...

 

 

이런내용이 끝에있더라구요 그래서

list.skin.php 내용에서  ALTER TABLE $g4[write_prefix]$bo_table ADD wr_{$di} VARCHAR(65535) NOT NULL 에서 $g4를 $g5바꿔서 올려봤고

mysql에서 varchar(65535) 로해서  mediumtext으로 나오긴하는데ㅠㅠㅠ

이렇게하면 혹시나 값이 저장될까해서 해봤는데 ㅠㅠ 안되서 질문올립니다

 

write.skin.php

 

write_update.skin.php

$wr_35 = "$wr_35";     $wr_35 = " update $write_table set wr_35 = '$wr_35' where wr_id = '$wr_id' "; sql_query($sql35);    

 

view.skin.php

 

많은 여분필드를 추가했을때 추가가 안된다면 어떻게 해야될까여 ㅠㅠㅠ.ㅠ..?

아시는분 계시나요

 

참고로 MySQL 직접 varchar(255) 으로 설정한걸 세어보니 77개이상일때만 안되구있습니다...

test로 해도 저장이안되는거같구요 ㅠㅠ

 

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

답변 2개

채택된 답변
+20 포인트
그누위즈

varchar(255)를 줄이세요

20이나 10으로요

로그인 후 평가할 수 있습니다

답변에 대한 댓글 2개

김호랑
6년 전
오 줄여도되는 입력값들을 일단 줄여서 당분간은 사용하겠습니다.
0~65,535 값을 늘리는건 없나보네요 일단 감사합니다!
김호랑
6년 전
지금 일단 숫자 줄여서 했습니다 무조건 255로하는것보다 맞춰서 하는게 더 괜찮은거같아요 ㅠㅠ 감사합니다

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

6년 전

아아그리고 혹시 이글 보시는 분들중에

write_update.skin.php

$wr_35 = "$wr_35";     $sql35= " update $write_table set wr_35 = '$wr_35' where wr_id = '$wr_id' "; sql_query($sql35);    

잘못보실까봐 수정해둬여 한군데 잘못되서 ㅎㅎ...ㅠㅠ

로그인 후 평가할 수 있습니다

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

답변을 작성하려면 로그인이 필요합니다.

로그인