Проверка правильности формы обратного вызова codeigniter не работает - PullRequest
0 голосов
/ 18 октября 2011

привет, я использую проверку формы codeigniter, я хочу добавить пользовательскую проверку формы для моего price поля

я пытаюсь это

в контроллере

$this->ci->form_validation->set_rules ( 'price', 'Price', 'callback_test' ); 

и у меня есть функция

private function test()
{
    echo "hello"; die ;
}

Я пытаюсь добавить пользовательский обратный URL test здесь. но не работает

я пытаюсь этот пример

http://codeigniter.com/user_guide/libraries/form_validation.html#callbacks

но мне так нравится проверка работает

$this->ci->form_validation->set_rules ( 'price', 'Price', 'required' );

почему моя функция обратного вызова не работает. Помогите мне, пожалуйста . спасибо ..............

1 Ответ

3 голосов
/ 18 октября 2011

Ваша пользовательская функция обратного вызова должна возвращать ИСТИНА или ЛОЖЬ, чтобы работать правильно. Кроме того, выражение die() не очень поможет вам ...

Это простой пример кода, но я надеюсь, что вы получите картинку:

$this->form_validation->set_rules ( 'price', 'Price', 'required|callback_test' );

function test($string)
{
   return ($string == 'something') ? TRUE : FALSE;
}

$string - это значение, полученное из input-> post и автоматически переданное вашей функции обратного вызова. Вам также необходимо указать сообщение об ошибке для этого обратного вызова, в противном случае вы получите сообщение об ошибке «сообщение об ошибке не указано для настраиваемого поля» или что-то в этом роде.

$this->form_validation->set_message('test', 'The value you provided is not in the right format');
...