[FRDB Project] 02 – 서서히 살을 붙여나간다

가을공연 준비와 겹쳐 진행하는 터라 진도가 그다지 빠르지는 않은 듯 싶다.
현재까지 모든 파일을 다 합쳐 500 라인 정도.
밤새는 날이 늘어갈 수록 코드 라인은 점차 길어지고, 코드 라인이 길어지는데에 비례하여 밤새는 날도 늘어간다.
고작 500 라인 넘어갔다고 슬슬 정신이 오락가락 하기 시작.
몇십만라인의 코드를 누비는 프로 프로그래머들은 대체 뭐하는 인간들이야? -.-

뭐 어디서 체계적으로 배운 장사가 아닌지라, 중요 코드마다 주석을 다는 습관 따위 예전부터 없었는데.
기르고 있다. 아니 길러야 한다. -_-
급속한 체력고갈로 인해 두시간 전에 짠 코드를 두고 이해불능 상태에 빠지는 경우가 종종 발생.
이젠 누가 시키지 않아도 알아서 주석문을 주렁주렁 매달고 있다.

오늘 매단 주석 중에 가장 마음에 드는 것은 역시 요거-.-


///////////////////////////////////////////////////////// CREDITS /////////////////////////////////////////////////////////
// FRDB (Future Railroad DataBase) Project
// programmed by MinsangK ( Minsang Kim / Inha Univ. The College of Information & Communication Engineering 03 )
// designed    by Kid       ( Yeon-Jung Im / Inha Univ. The College of Computer Engineering 06 )
// 2007. Autumn

사실 이런건 다 만들고 해도 늦지 않은데, 그냥 기분상 -.-

http://minsangk.com/frdb/list.php

이제는 이 링크 하나만 타고 들어가면, 현재 제작 중인 모든걸 볼 수 있다.
골조공사가 마무리되고 슬슬 공구리-_-질에 들어갔단 징조 -.-
어쨌든 여기 공개된 것은 전부 완벽히 작동한다. (혹시 에러나면 리플 달아줘- 바로 수정들어가게-)

이제부턴 특정파일이 어떤 역할을 하는지에 대한 구분이 서서히 모호해지고 있다.
특히 가장 중심이 되는 write.php 와 list.php 는 현재 상호작용하고 있는 페이지만 각각 2,3개씩.
이 기본 코드들로 인클루드 되는 다른 파일들도 서서히 살을 찌우고 있는 상태.
특히 frdbProperty.php 는 따로 만든 보람을 느낄만큼 덩치가 커졌음 -.-


[#M_frdb_property.php|close|
(Language : php)


  1. <?PHP


  2.  


  3. // FRDB Property


  4. // : 각 필드 속성 관련 상수 배열 정의


  5.  


  6. $property_region = Array("서울,인천,경기,수도권", "대전,충청,전북권", "대구,경북권", "광주,전남권", "부산,울산,경남권", "강원권", "제주권");


  7. $property_state = Array("설계", "계획", "구상", "시공", "개통", "완공");


  8. $property_attribute = Array("신설", "연장", "복선전철화", "이설", "전철화", "차량기지이전");


  9. $property_standardEC = Array("AC", "DC");


  10. $property_standardSign = Array("ATC", "ATS", "ATO", "AGT", "무인자동운전");


  11. $property_standardVehicle = Array("통근형대형전동차", "모노레일", "화물열차", "직통열차", "일반열차", "7호선전동차", "경전철(무인자동운전)", "경전철(지하)", "고무차륜AGT(무인자동궤도시스템)", "SLRT(신형노면경전철)", "도시형자기부상열차");


  12. $property_standardWiring = Array("단선","복선","2복선");


  13.  


  14. // 리스트에서 보여줄 필드 선택


  15. $properties = Array("chk", "admin", "idx", "region", "kind", "name", "state", "attribute", "section", "distance", "standardEC", "standardEV", "standardSign", "standardVehicle", "standardWiring", "linkingIDX", "reference", "date");


  16. $vMode_admin = Array("0","1","1","1","1","1","1","1","1","1","1","1","1","1","1","1","1","1");


  17. $vMode_linkingIDX = Array("1","0","1","1","1","1","0","0","0","0","0","0","0","0","0","1","0","1");


  18.  


  19. ?>

_M#]

그러니까 모든 속성이 다 배열로 들어가있다. ($property_속성)
각 속성의 이름도 배열로 정의 ($properties)
거기에 더해 리스트에 지정된 보여주기모드($vMode) 에 따라 어떤 속성을 보여줄 건지 지정하는 것도 배열이다.
저렇게 나란히 배치해 놓은 덕분에 linkingIDX (관련노선정보) 입력폼 제작이 한결 쉬워진거다. 물론 그럴려고 한 짓이다, 이게.
vMode_모드속성 이 “1″로 지정될 경우 그 필드를 보여주고 “0″이면 숨기는 것.

어쨌든 이게 최근 작업 중에 가장 난이도 있었고 골치 아팠던 작업이었다.
그냥 코딩 자체가 어려웠다기보다 이걸 어떻게 구현할지 머릿속에 구상하는 시간이 더 오래걸렸다.
그러느라 피운 담배가 한갑은 될걸? -_-
어쨌든 그 담배 한갑으로 헐어버린 목구멍만큼이나 완벽한 보상으로,
다음번 작업부턴 이런 식의 구성이 자주 나올 거다.
나중에 view.php 제작에도 아주아주 대단히 요긴하게 쓰일 예정.

* 이전 포스트에서 ‘더 할 일’이라고 이름 붙인 것들 중 그간의 작업으로 해낸 것들과 못 한 것들 리스트


http://minsangk.com/frdb/write.php
X – 예외사항처리(자바스크립트)
O – 수정 모드시 attribute 필드 이하로 쿼리 받기
O – 입력 모드와 수정 모드 시 스타일/메세지 구분
O – linkingIDX 입력 폼 (이건 따로 페이지 만들어서)
X – openingTime, progress 테이블 입력 폼

http://minsangk.com/frdb/action.php

O – linkingIDX 페이지 연계
O – 체크박스 예외사항처리 (str_)
X – openingTime, progress 테이블 연계 쿼리전송


http://minsangk.com/frdb/list.php

X – openingTime, progress 테이블 연계 쿼리전송
(이건 view.php 에 들어갈 기능으로 재편)
O – linkingIDX 페이지 연계
O – 체크박스 선택 필드 구분 출력
X – state 필드 내용별 신호등 img 출력
X – 관련 필드 span
(마지막 두개는 view.php 에 들어갈 기능으로 재편)


일단 제일 크게 남은 일은 progress(진행상황) 와 openingTime(개통시기) 을 테이블로 따로 만들어 입력폼과 연계시키는 작업.
테이블 구성은 어느 정도 머릿속에-_- 있고 가장 무시무시했던 frdb_base 테이블을 무난히 마쳐가는 단계니 큰 어려움은 없을 것으로 예상.
관리자 로그인폼과 action.php 를 동작시킬때 쿠키로 관리자 로그를 확인하는 과정은 뭐 급할 거 없으니 천천히 할 생각임.

여기까지만 완성되면 DB 관리적 측면에서의 모든 구성이 마무리된다.
그럼 또 어떤 측면이 있느냐, 하면. 바로 사용자적 측면.
DB도 모두 갖춰져있고 관리자 모드의 추가/편집/삭제/목록 이 모두 구현되어 있으니, 크게 어려울 건 없을 듯 싶다.
(다음 포스트에서, 아 이런 젠장 뭐가 어려울 게 없어 힘들어 죽겠구만- 이런거 쓸 듯 싶지만, 어쨌든)
그러나 사용자적 측면의 view, search 폼들은 페이지 디자인의 레이아웃이 잡힌 다음에야 들어갈 수 있으니,
아마도 다음 혹은 다다음 포스트 중에 연정씨가 디자인하고 있는 페이지들의 윤곽을 공개할 듯.

공연이 이제 2주 남은 터라, 다음 포스트는 언제 올릴지 모르겠다.
할 일이 산더미로 쌓여있으니만큼 일단은 코딩이 먼저지 포스팅은 나중이거든?
그래도 포스팅을 꾸준히 하는 이유는 연정씨의 PPT 에 도움을 주기 위해서이기도 하고, 내 작업의 참고노트가 되기 때문이기도 하다.
최근 작업 내내 포스트를 참고하며 해야 될 일을 참고하고 그 링크를 직접 두드리는 수고를 덜었다.
이 정도면 훌륭한 블로거 아냐? (대다수가 못 알아들을 말을 조낸 장황하게 쓴다고 욕하는 소리가 여기까지 들린다-.-)

서서히 정신이 혼미해지는 시간.
내일은 계획표고 뭐고 되는대로 푹 자고 일어나 다시 시작하자.
요새 잠을 너무 못 잤더니 이래저래 신체적 정신적 리듬이 모두 엉망이다.
쉽게 갈 수 있는 길을 어렵게 가면서도, 이게 그냥 뭐. 나 스스로 주체 안되게 움직이는 것. 누구 장난 마냥.

다시 달리자!-.-

One thought on “[FRDB Project] 02 – 서서히 살을 붙여나간다

  1. 민상k

    * 오늘 추가 업데이트
    – 자료의 삽입/수정/삭제 시 LinkingIDX 가 연계되어 등록된다.
    (한쪽에만 링크를 걸어놓으면 다른 쪽도 동시 등록됨. 링크를 푸는 경우도 마찬가지로 양쪽다 링크가 해제된다)
    – openingTime 을 추가 테이블로 구성하지 않고 직접 입력 방식으로 바꾸고 필드를 하나 추가했다.
    – frdbProperty.php 에 %properties_H 변수를 추가해서 실제 리스트에 들어갈 한글 속성명을 기입

    Reply

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>