CI 묻고 답하기

제목 input 으로 받은 데이터에 대한 유효성 검사 방법에 대해 질문 드려요.
글쓴이 엠제이 작성시각 2015/06/12 11:47:55
댓글 : 4 추천 : 0 스크랩 : 0 조회수 : 17400   RSS
어찌보면 php 질문에 가까울 수 있는데...

$data = $this->input->post("data");

$data 에 대해서 유효성 검사를 어떻게 하면 좋을까요?

$data = isset($this->input->post("data")) ? $this->input->post("data") : null;

empty()도 자주 썼는데 얘는 0값도 true 로 반환해서..곤란할 때두 있고...

죄송하지만.. 고수님들께서 자주 쓰는 방법 좀 알려주시면 안될까요?

<컨트롤러에서>
public function ctrl_method ($A, $B) {
  $C = $this->input->post("post_data");
  $this->load->model("model_name");
  $this->model_name->model_method($A, $B, $C);
}

<모델에서>
public function model_method($A, $B, $C) {
     // 섞고 돌리고 섞고
}

컨트롤러에서 모델까지 전달하는 과정까지 데이터 검증을 어떻게 하시는 지..
검증은 열심히 해야겠는데.. 깔끔하게 항상 나오질 않아서.. 매 프로젝트마다 조금 달라집니다. ㅠ
form validation을 쓸때도 있지만.. ajax로 통신하는 경우가 제일 많아서...
아직 CI 전체를 다 아는 부분이 아니라서.. 응용가능한 부분이 있다면 좀 알려주세요.

프론트엔드 (자바스크립트) 에서 하시는 것도 알려주시면 더욱 좋고요.

너무 개인적인 노하우에 대한 질문일 수도 있지만.. 알려주시면 정말 고마울 것 같습니다.

3줄 요약.
1. 전달 데이터 처리 과정에서 데이터 검증을 어떻게 하는지 알려주세요. (저는 이렇게 합니다)
2. 기존의 존재하는 방법 (CI에서 제공하는 걸 이렇게 응용하면 된다)
3. 자바스크립트에서는 어떻게 한다. ( 전달 데이터 일단 비워서 보낸다/ 아예 보내질 않는다)











 
 다음글 MS-SQL 한글로 된 컬럼 조회? (1)
 이전글 controllers 디렉토리안에 디렉토리를 하나더 생... (4)

댓글

한대승(불의회상) / 2015/06/12 11:51:24 / 추천 0
CI에서 사용되는 폼검증은 아래 샘플을 확인 하세요.

http://sample.cikorea.net/ci20/sample_view/class/form_validation
엠제이 / 2015/06/12 11:58:26 / 추천 0
혹시 post, get , 컨트롤러에 직접 받은 파라미터들도 폼검증할 방법은 없을까요?
한대승(불의회상) / 2015/06/12 13:15:26 / 추천 0
3.0 에서는 검증 할 수 있지만 2.X 버전에는 $_POST 에 검증 값을 집어 넣으면 검증 가능 합니다.
 
$data = array('a' => 1, 'b' =>2);
$_POST = $data;

$this->form_validation->set_rules('a', '테스트1', 'trim|required');
$this->form_validation->set_rules('b', '테스트2', 'trim|htmlspecialchars|required');

if ($this->form_validation->run() == TRUE)
{
 echo '성공';    
}
엠제이 / 2015/06/12 13:20:00 / 추천 0
오~ 감사합니다 ㅎㅎ