TIP게시판

제목 Form_validation 에서 콜백을 사용할 때 주의점
글쓴이 徽人 작성시각 2010/06/28 02:28:05
댓글 : 0 추천 : 0 스크랩 : 0 조회수 : 13567   RSS
폼검증(http://www.codeigniter-kr.org/user_guide/libraries/form_validation.html#arraysasfields) 을 사용하시는

분들이 계실텐데요.  간단한 팁이지만 저 처럼 혹시라도 삽질하실 분들이 계실 까봐 몇자 적어봅니다.


rule생설 할때 콜백을 사용하 실때가 있으실겁니다.

$this->form_validation->set_rules('name', '이름', 'require|callback_name_check');

요런식으로 말이죠. 이런식으로는 괜찮지만  아래처럼 require가 빠져버리면 문제가 생겨버립니다.

$this->form_validation->set_rules('name', '이름', 'callback_name_check');

어떤 문제인가 하니 콜백을 무조건 실행한다는 거죠.

form에 다음과 같은 체크박스가 있다고 가정해 볼게요.
<input type="checkbox" value="bar" name="foo[]" />

체크를 하지않고 폼전송을 하게 되면 $_POST 변수에 foo라는 인덱스는 존재하지 않게 됩니다.
하지만 위에서 등록한 콜백함수는 실행됩니다. null이라는 값을 가진 체로요.


다시 말하자면, require라는 rule이 없다면 callback함수는 해당 필드가 POST변수에 있건 없건 무조건 실행됩니다.!!



 다음글 file_exists -> is_file (7)
 이전글 php의 함수를 javascript에서 php.js 입... (3)

댓글

없음