CMS/프레임워크 | XE 1.x |
---|---|
개발 언어 | PHP 5.x |
xe로 제작중인데요.
컨택트 폼 연동을 했는데 form 값 체크 하는 모듈이 어디에 있는지요?
<filter name="insert" module="board" act="procBoardInsertDocument" confirm_msg_code="confirm_request">
<form>
<node target="user_name" required="true" maxlength="20"/>
<node target="password" required="true" />
<node target="email_address" maxlength="250" required="true" filter="email" />
<node target="address" maxlength="250" required="true" />
<node target="mobile_phone" maxlength="4" required="false" filter="tel" />
<node target="homepage" maxlength="250"/>
<node target="title" required="true" minlength="1" maxlength="250" />
<node target="content" required="true" minlength="1" />
<node target="inquiry" required="true" minlength="1" />
<node target="category_srl" required="true" />
</form>
<response callback_func="completeDocumentInserted">
<tag name="error" />
<tag name="message" />
<tag name="mid" />
<tag name="document_srl" />
<tag name="category_srl" />
</response>
</filter>
위 부분에서 붉은 부분이 체크 함수인거같은데 어느 파일에 있는지 모르겠습니다.
email_address 입력 박스에 이메일 형식 체크 안하려고 하는데 어디에서 그 작업을 해야 하는지 모르겟네요,ㅠㅠ
댓글 8
에서 filter="email" 이 이메일형식 체크하는겁니다.
이메일 필수도 없애고프면 required="true" 도 지워버리면 되고요
그래서 required="false"로 해봐도 역시나 체크를 하구요..ㅠ
관리자페이지 하단의... 캐시파일 재생성 해보세요. 혹시모르니 세션정리도 하시고..
procBoardInsertDocument 는
proc <- 어떤방식으로 실행될 것인지 POST으로 form 을 받는지 아니면 display의 약자인 disp의 액션값인지를 정하는 부분입니다. 이 부분은 XE모듈 제작이나 액션값을 알려고 할때 알아두시면 좋습니다.
Board <- 모듈명 (modules/board 와 같은 이름들입니다 앞부분이 대문자로 시작하고요)
InsertDocument <- 해당 규칙의 이름(모듈제작자가 지정)
이와 같은 형식으로 제작됩니다.
따라서 proc 이다음 Board 가 잇기때문에 다음 대문자가 나오기전까지의 이름이 모듈의 경로를 파악할 수 있는 것입니다.
Board <-까지 이므로 이는 modules/board 안에 있는 파일중에 하나 입니다.
그리고
procBoardAdmin~ 으로 시작되는 것이랑
procBoard~ 으로 시작되는 부분이 있는데 procBoardAdmin 부분은 대부분 board.admin.controller.php파일에 위치하고요
procBoard~ 으로 시작되는 것은 대부분 board.controller.php 안에 들어갑니다.
procBoard~
dispBoard~ 와 같은 규칙은 모듈명포함 .view.php 으로 끝나는 파일과 controller.php 으로 끝나는 파일들속에 액션값으로 만드는 규칙으로 생성되는 파일들이니 대부분 이 파일들을 확인해보시면 좋습니다.
아주 유용한 정보를 알려주셨네요
차근차근 보겠습니다.
감사합니다^^
지당하고 옳은 말씀입니다.
귀찮다고 대충 편법쓰지말고 정석대로 하는게 100번 옳은 말씀입니다.
항상 나중에 문제가 발생하더라구요^^