2013-01-18 2 views
0

set_rule에 대한 유효성 검사 메시지를 설정하려고합니다 .... 가능합니까? 유효성 확인 메시지 설정

나는이

$this->form_validation->set_rules('payment_amount', 'Payment Amount', 'regex_match[/^\d{0,4}(\.\d{1,2})?$/]'); 
$this->form_validation->set_message('payment_amount', 'This is a test'); 

을 시도하고 내 메시지가 변경되지 않았다.

아이디어가 있으십니까?

+0

메시지를 반향 했습니까? ''(여기에 설명 된대로 : http://ellislab.com/codeigniter/user-guide/libraries/form_validation.html#individualerrors) – jtheman

+0

예 ... 메시지가 나타나지만 변경되지 않습니다. – user1269625

+0

어디서 설정합니까? 그 때 메시지? – jtheman

답변

2

규칙에 대한 함수를 만들어 사용자 지정 유효성 검사 오류 메시지를 설정할 수 있습니다.

이 코드는 테스트되지 않았습니다.

public function payment_amount($str) 
{ 
    if (preg_match('[/^\d{0,4}(\.\d{1,2})?$/]', $str) 
    { 
     $this->form_validation->set_message('payment_amount', 'The %s field has an error'); 
     return FALSE; 
    } 
    else 
    { 
     return TRUE; 
    } 
} 

회사 CI의 콜백 다음과 같이

$this->form_validation->set_rules('payment_amount', 'Payment Amount', 'callback_payment_amount') 
+0

이 코드는 작동하지 않습니다 ... 이제 아무 것도 표시되지 않습니다 ... 오류가 발생했기 때문에 함수에서 공용을 꺼내야했습니다. – user1269625

+0

컨트롤러에이 기능을 넣지 않은 것처럼 들리십니까? –

+0

공개하지 않고 공개하는 것은 같습니다. 함수의 기본값은 public입니다. – jtheman

0

이 MY_Form_validation.php & 만들기에 코드를 넣어. 아마도 기능 또는 두를 추가 - - 다음 전체를 교체 잔인한 당신이 할 필요가 기존 라이브러리에 몇 가지 기능을 추가하는 경우

문서를 사용 (http://ellislab.com/codeigniter/user-guide/general/creating_libraries.html)

네이티브 라이브러리

확장 귀하의 버전과 라이브러리. 이 경우 단순히 클래스를 확장하는 것이 좋습니다. 클래스를 확장하는 것은 클래스를 몇 가지 예외로 대체하는 것과 거의 동일합니다.

클래스 선언은 부모 클래스를 확장해야합니다. 새 클래스 이름과 파일 이름 앞에는 MY_ 접두사가 있어야합니다 (이 항목은 구성 가능합니다. 아래 참조). 예를 들어, 응용 프로그램/라이브러리/MY_Email.php라는 파일을 만듭니다 네이티브 이메일 클래스를 확장하고, 당신의 클래스를 선언 :

class MY_Email extends CI_Email { 

} 

주 :이 클래스의 생성자를 사용해야하는 경우 상위 생성자를 확장해야합니다.

class MY_Email extends CI_Email { 

    public function __construct() 
    { 
     parent::__construct(); 
    } 
}