일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- 아리스티포스
- 아낙사고라스
- 아이스키네스
- VMware
- 알키비아데스
- Server
- bridged
- php
- 다날
- ExpanDrive
- A2000UA
- RaiDrive
- 서버
- 히파티아
- 아낙시만드로스
- mysl
- 아베로에스
- PG
- 피론
- 프톨레 마이오스
- NetDrive
- httpd
- short_open_tag
- 소도마
- 디아고라스
- 크세노크라테스
- CentOS
- 윈도우10
- 고르기아스
- 플로티노스
- Today
- Total
개발자의 하루
DB입력은 신중하고 또 신중하게 본문
사건의 요는 DB에서 데이터를 가지고 와서 배열을 만들고 배열안의 내용을 토대로 결과를 보는 것 이었습니다.
하지만 이상하게 특정 배열에서만 체크가 안되는 현상이 발생되었습니다.
이거 삽질하려다 2일은 보낸것 같아 허망하네요. 소스 상에는 전혀 문제가 없는데 결과가 안나오니 ㅠㅠ
<?
$data = "1,2,3,4,5,6,7,8,9,0,1,2,3,4,5,6,7,8,9,0";
$tmp = explode(',',$data);
if($tmp[[0]=='0') {...}
else if($tmp[1]=='0') {...}
?>
대충 이런 식이었는데 위 $data를 DB에서 불러오는 방식이었습니다.
아무리 봐도 이상한 점이 없는데 실행 결과가 안 나오던 터 금일 새벽에 드디어 문제를 풀었습니다 ^^; 휴...
결론부터 말씀 드리면 DB에 데이터 삽입 과정에서 실수 가 있었던 것입니다.
위 배열을 쉽게 구성하고자
2,3,0,0,0,3,3,3,3,1
0,2,0,0,0,0,0,3,3,0
0,3,1,0,0,0,0,0,3,0
0,3,3,1,0,0,0,0,0,0
0,3,3,3,1,0,0,0,0,0
0,0,3,0,0,1,0,0,0,0
0,0,0,0,0,0,1,0,0,0
0,0,0,0,0,0,0,1,0,0
0,0,0,0,0,0,0,0,1,0
0,0,0,0,0,0,0,0,0,1
0,0,0,0,0,0,0,0,0,1
이런 식으로 테스트 파일을 만들어 phpmyadmin을 사용해서 인서트 시켰는데
이게 특정 배열에서만 인식을 하지 못하는 것이었죠. 9, 18, 27 번등에서
9번 배열의 경우 값이 1이고 print_r로 봐도 1로 나왔고
if에서 1인지만 체크 하면 되는 것인데 아에 체크를 하지 못하는 불상사가 발생되었던 것입니다.
DB인서트 과저에서 txt파일을 그대로 넣어 버려 줄 바꿈이 \n까지 같이 들어가서 1이 아닌 1\n라고 나오게 된 것이죠 ㅠㅠ
2,3,0,0,0,3,3,3,3,1,0,2,0,0,0,0,0,3,3,0,0,3,1,0,0,0,0,0,3,0,0,3,3,1,0,0,0,0,0,0,0,3,3,3,1,0,0,0,0,0,0,0,3,0,0,1,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,1
해당 데이터를 지우고 한줄로 쭉 입력해서 인서트 시키니 정상적으로 판단 할 수 있게 되었습니다.
문제의 원인을 알고 나니 허탈할 뿐이네요. 이걸로 2일이나 고생하고 별의별 생각을 다 했으니 말이죠.
'Client' 카테고리의 다른 글
C 드라이브 용량이 자꾸만 모자를때 (0) | 2017.11.29 |
---|---|
jquery로 css 백그라운드 이미지 변경 (2) | 2017.08.22 |
cannot change network to bridged there are no un-bridged host network adapters (0) | 2017.08.20 |
3D MAX 소프트웨어 라이센스 체크아웃이 실패했습니다. (0) | 2017.07.04 |
원격지의 동영상 끊김없이 감상하기 (3) | 2017.06.29 |