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

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

QA

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

본문

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

 

 

참고 : 여분필드 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으로 나오긴하는데ㅠㅠㅠ

1982140633_1546586242.7851.png

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

 

write.skin.php

<input type="text" name="wr_35" value="<?php echo $wr_35 ?>" id="wr_35" class="form-control" style="width:250px;" maxlength="100" placeholder="" />

 

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

<?php echo $view[wr_35]; ?>

 

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

아시는분 계시나요

 

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

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

 

이 질문에 댓글 쓰기 :

답변 2

varchar(255)를 줄이세요

20이나 10으로요

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

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);    

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

답변을 작성하시기 전에 로그인 해주세요.
전체 27
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT