만들면서 배우는 CodeIgniter Q&A

제목 p198 보안부분 form 헬퍼 질문드립니다.
글쓴이 승희아빠 작성시각 2013/11/03 13:57:36
댓글 : 5 추천 : 1 스크랩 : 0 조회수 : 9515   RSS
 form_validation 에서 값 복원에 set_value 를 사용 했었습니다.

보안부분에 form 헬퍼 로드 보다가 ci 메뉴얼 form 헬퍼 부분을 살펴보던 중에

set_value 가 포함되어 있더군요.

form_validation 에서 form 헬퍼 로드 없이 set_value 를 사용했었는데

왜 가능한거죠?
 다음글 p203 세션 로드 후 게시판에서 보안키를 요구하네요 (4)
 이전글 p170 형식 검토에서 is_unique 를 어떻게 활... (2)

댓글

승희아빠 / 2013/11/05 00:01:35 / 추천 0
마냥 기다리기 뭐해서 자답입니다.

라이브러리 form_validation 에도 헬퍼 form 에도 set_value 라는 함수가 존대하더군요.

다만 그 모양세가 좀 다르긴 합니다.

이 정도만 하고 좀 더 공부를 해야겠습니다.

다른 모양세가 아직은 눈에 잘 들어 오지 않아서요.
변종원(웅파) / 2013/11/05 18:40:32 / 추천 0
아.. 제가 지난 주 토요일에 이사를 해서 신경 쓸 틈이 없었습니다.

ci 라이브러리와 헬퍼의 사용법이 다릅니다. 그 차이를 먼저 알면 쉽습니다.

$this->라이브러리명->함수명() 과 함수명()

헬퍼는 예전 include방식과 동일합니다. include하고 함수명()으로 사용.
승희아빠 / 2013/11/05 19:05:04 / 추천 0
라이브러리는

$this->라이브러리명->함수명()

헬퍼는

함수명()

인가요?

form_validation 은 라이브러리인데 write_v.php 에서는

<?php echo set_value(); ?>


이렇게 사용을 했는데요.

form 헬퍼 사용전인데 어찌 저리 사용이 가능한가요?
변종원(웅파) / 2013/11/05 19:42:59 / 추천 0
config/autoload.php 열어보세요. 또는 컨트롤러 상단에서 선언되어 있을 겁니다
승희아빠 / 2013/11/05 20:50:55 / 추천 0
 autoload.php 나 컨트롤러 상단 어디에도 선언된 곳이 없습니다.

혹시나 해서 form 헬퍼에 echo 넣고 확인 해 보니 출력이 되더군요.

그래서 form_validation 열어보니 __construct 에 form 헬퍼 로드 부분이 보이더군요.

그래서 가능한거였나 봅니다.

  // Automatically load the form helper
  $this->CI->load->helper('form');

따라서 form_validation 라이브러리를 로드 했다면 form 헬퍼는 로드할 필요가 없어 보입니다.