CodeIgniter-양식 유효성 검사

유효성 검사는 웹 애플리케이션을 구축하는 동안 중요한 프로세스입니다. 그것은 우리가 얻는 데이터가 저장 또는 처리하기에 적절하고 유효한지 확인합니다. CodeIgniter는이 작업을 매우 쉽게 만들었습니다. 간단한 예를 들어이 과정을 이해합시다.

보기 파일 만들기 myform.php 아래 코드를 저장하십시오. application/views/myform.php. 이 페이지에는 사용자가 자신의 이름을 제출할 수있는 양식이 표시되며 제출하는 동안 비어 있지 않은지 확인하기 위해이 페이지의 유효성을 검사합니다.

<html>
 
   <head> 
      <title>My Form</title> 
   </head>
	
   <body>
      <form action = "" method = "">
         <?php echo validation_errors(); ?>  
         <?php echo form_open('form'); ?>  
         <h5>Name</h5> 
         <input type = "text" name = "name" value = "" size = "50" />  
         <div><input type = "submit" value = "Submit" /></div>  
      </form>  
   </body>
	
</html>

보기 파일 만들기 formsuccess.php 그리고 그것을 저장하십시오 application/views/formsuccess.php. 양식이 성공적으로 검증되면이 페이지가 표시됩니다.

<html>
 
   <head> 
      <title>My Form</title>
   </head> 
	
   <body>  
      <h3>Your form was successfully submitted!</h3>  
      <p><?php echo anchor('form', 'Try it again!'); ?></p>  
   </body>
	
</html>

컨트롤러 파일 만들기 Form.php 그리고 그것을 저장하십시오 application/controller/Form.php. 이 양식은 제대로 확인되지 않거나 리디렉션되지 않은 경우 오류를 표시합니다.formsuccess.php 페이지.

<?php
  
   class Form extends CI_Controller { 
	
      public function index() { 
         /* Load form helper */ 
         $this->load->helper(array('form'));
			
         /* Load form validation library */ 
         $this->load->library('form_validation');
			
         /* Set validation rule for name field in the form */ 
         $this->form_validation->set_rules('name', 'Name', 'required'); 
			
         if ($this->form_validation->run() == FALSE) { 
         $this->load->view('myform'); 
         } 
         else { 
            $this->load->view('formsuccess'); 
         } 
      }
   }
?>

다음 줄을 추가하십시오. application/config/routes.php.

$route['validation'] = 'Form';

브라우저에서 다음 URL을 방문하여이 예제를 실행 해 보겠습니다. 이 URL은 사이트에 따라 다를 수 있습니다.

http://yoursite.com/index.php/validation

다음 화면이 생성됩니다-

컨트롤러에 유효성 검사를 추가했습니다. Name양식을 제출하기 전에 필수 필드입니다. 따라서 이름 필드에 아무것도 입력하지 않고 제출 버튼을 클릭하면 아래 화면과 같이 제출하기 전에 이름을 입력하라는 메시지가 표시됩니다.

이름을 성공적으로 입력하면 아래와 같은 화면으로 이동합니다.

위의 예에서는 필수 규칙 설정을 사용했습니다. CodeIgniter에는 아래에 설명 된 많은 규칙이 있습니다.

유효성 검사 규칙 참조

다음은 사용할 수있는 모든 기본 규칙의 목록입니다.

규칙 매개 변수 기술

required

아니 양식 요소가 비어 있으면 FALSE를 반환합니다.

matches

양식 요소가 매개 변수의 요소와 일치하지 않으면 FALSE를 리턴합니다. 일치 [form_item]

regex_match

양식 요소가 정규식과 일치하지 않으면 FALSE를 반환합니다. 정규식 일치 [/ 정규식 /]

differs

양식 요소가 매개 변수의 요소와 다르지 않으면 FALSE를 리턴합니다. 다름 [form_item]

is_unique

양식 요소가 매개 변수의 테이블 및 필드 이름에 고유하지 않은 경우 FALSE를 리턴합니다. 참조 :이 규칙이 작동하려면 Query Builder 를 활성화해야합니다. is_unique [table.field]

min_length

양식 요소가 매개 변수 값보다 짧은 경우 FALSE를 리턴합니다. min_length [3]

max_length

양식 요소가 매개 변수 값보다 길면 FALSE를 리턴합니다. 최대 길이 [12]

exact_length

양식 요소가 정확히 매개 변수 값이 아닌 경우 FALSE를 반환합니다. 정확한 _ 길이 [8]

greater_than

양식 요소가 매개 변수 값보다 작거나 같거나 숫자가 아닌 경우 FALSE를 리턴합니다. 보다 큼 [8]

greater_than_equal_to

양식 요소가 매개 변수 값보다 작거나 숫자가 아닌 경우 FALSE를 리턴합니다. greater_than_equal_to [8]

less_than

양식 요소가 매개 변수 값보다 크거나 같거나 숫자가 아닌 경우 FALSE를 리턴합니다. less_than [8]

less_than_equal_to

양식 요소가 매개 변수 값보다 크거나 숫자가 아닌 경우 FALSE를 리턴합니다. less_than_equal_to [8]

in_list

양식 요소가 미리 결정된 목록에 없으면 FALSE를 반환합니다. in_list [빨간색, 파란색, 녹색]

alpha

아니 양식 요소에 알파벳 문자 이외의 것이 포함 된 경우 FALSE를 반환합니다.

alpha_numeric

아니 양식 요소에 영숫자 이외의 문자가 포함 된 경우 FALSE를 반환합니다.

alpha_numeric_spaces

아니 양식 요소에 영숫자 문자 또는 공백 이외의 내용이 포함 된 경우 FALSE를 반환합니다. 시작 또는 끝에 공백을 피하기 위해 트림 후 사용해야합니다.

alpha_dash

아니 양식 요소에 영숫자 문자, 밑줄 또는 대시 이외의 것이 포함 된 경우 FALSE를 반환합니다.

numeric

아니 양식 요소에 숫자 이외의 것이 포함 된 경우 FALSE를 반환합니다.

integer

아니 양식 요소에 정수 이외의 것이 포함 된 경우 FALSE를 반환합니다.

decimal

아니 양식 요소에 10 진수 이외의 것이 포함 된 경우 FALSE를 반환합니다.

is_natural

아니 양식 요소에 0, 1, 2, 3 등의 자연수 이외의 것이 포함되어 있으면 FALSE를 반환합니다.

is_natural_no_zero

아니 양식 요소에 자연수 이외의 것이 포함되어 있지만 0-1, 2, 3 등이 포함되지 않은 경우 FALSE를 반환합니다.

valid_url

아니 양식 요소에 유효한 URL이 포함되지 않은 경우 FALSE를 반환합니다.

valid_email

아니 양식 요소에 유효한 이메일 주소가 포함되어 있지 않으면 FALSE를 반환합니다.

valid_emails

아니 쉼표로 구분 된 목록에 제공된 값이 유효한 이메일이 아닌 경우 FALSE를 반환합니다.

valid_ip

아니 제공된 IP가 유효하지 않으면 FALSE를 반환합니다. IP 형식을 지정하기 위해 'ipv4'또는 'ipv6'의 선택적 매개 변수를 허용합니다.

valid_base64

아니 제공된 문자열에 유효한 Base64 문자가 아닌 다른 문자가 포함 된 경우 FALSE를 반환합니다.