Intereting Posts

Класс проверки подлинности Codeigniter при ваших собственных потребностях

Я работаю в codeigniter и Iam, желая создать свой собственный класс проверки, используя библиотеку «Validation_form» и мое пользовательское правило, где я буду размещать свои собственные правила проверки и использовать их везде в моем проекте, но это кажется невозможным, я пытался в парах способы справиться с этим, но ничего.

Codeigniter kindle заставляет меня делать мои методы обратного вызова в моем контроллере, но мне они нужны в моей библиотеке или «методе» или где угодно еще !!!

Мой вопрос: могу ли я создать конкретную библиотеку, где я буду размещать свои правила проверки и другие функции, которые мне нужно для этого?

Related of "Класс проверки подлинности Codeigniter при ваших собственных потребностях"

вы можете создать новую библиотеку в application/libriries и назовите файл MY_Form_validation

Что вы здесь делаете, это расширение класса form_validation так что вам не нужно будет form_validation с основными файлами.

MY_ – это то, что установлено в вашем конфиге, обязательно проверьте его, если вы изменили свое.

образец MY_Form_validation.php

 class MY_Form_validation Extends CI_Form_validation { //this is mandatory for this class //do not forget this or it will not work public function __construct($rules = array(){ parent::__construct($rules); $this->CI->lang->load('MY_form_validation'); } public function method1($str){ return $str == '' ? FALSE : TRUE; } pulic function method2($str) { //if you want a validation from database //you can load it here // or check the `form_validation` file on `system/libraries/form_validation` } public function check_something_with_post($tr) { return $this->CI->input->post('some_post') == FALSE ? FALSE : TRUE; } } 

В принципе, когда вы вызываете method1|method2 значение вашего поля сообщения будет параметром метода. если вы хотите проверить другое сообщение, вы можете сделать это, используя $this->CI->input->post('name of the post');

когда вы хотите передать параметр, просто посмотрите на форму проверки is_unique или unique код на system/libraries/form_validation вас будет идея.

Чтобы создать сообщение об ошибке, которое идет с ним, перейдите в application/language/english/MY_Form_validation_lang

Образец MY_form_validation_lang.php

 $lang['method1'] = "error error error."; $lang['method2'] = "this is an error message."; 

если english не существует на вашем application/language просто создайте его.

подробнее о создании библиотек

ЗАМЕТКА:

На каком-то сервере linux или debian вы можете изменить имя файла из MY_Form_validation на MY_form_validation отметить маленькое f в form слова.