Code Igniter - Проверка формы (без сообщений об ошибках) - PullRequest
0 голосов
/ 03 марта 2012

У меня настоящие проблемы с Code Igniter. Я попытался включить ошибки, которые не показывают ничего полезного, и, насколько мне известно, я правильно следую документам. У меня проблема в том, что функция validation_errors () в шаблоне не повторяет проблемы проверки. Процесс проверки работает (он возвращается к форме, если проверка не пройдена), однако сообщение об ошибке не отображается. Кроме того, функция set_values ​​() не заполняет поля только что введенной информацией и вместо этого заполняет значением по умолчанию.

Файл tpl является очень простым и имеет правильные функции и т. Д., Поэтому он не включен (большой), однако я включил метод из контроллера ниже.

    // Setup Error Specifics

    $this->form_validation->set_error_delimiters('<div class="nNote nFailure hideit"><p><strong>FAILURE: </strong>', '</p></div>');

    $this->form_validation->set_rules('company_name', 'Company Name', 'required');
    $this->form_validation->set_rules('telephone_no', 'Telephone Number', 'required|is_natural');
    $this->form_validation->set_rules('email_address', 'Email Address', 'required|valid_email');

    // Begin Validation

    if($this->form_validation->run() === false) {

        $data = array();
        $data['company_info'] = $this->company_model->get_company($this->input->get('company_id'));

        $this->load->view('common/header');
        $this->load->view('company/edit', $data);
        $this->load->view('common/footer');

    } else {

        $this->session->set_flashdata('success_message', 'You have updated the company record(s)');
        redirect('customer/company/listing', 'location');

    }

Я ценю вашу помощь, Спасибо!

ОБНОВЛЕНИЕ ---

После изучения ядра CodeIgniter я сузил область поиска проблемы до некоторых используемых мной хуков. Я полностью закомментировал код метода для каждого из двух хуков (оба являются хуками post_controller_constructor). Даже после того, как код каждого хука закомментирован, валидация формы все равно не проходит. Похоже (если я не иду по неверному пути), что перехваты post_controller_constructor вызывают проблемы с проверкой формы.

Любые идеи ??

1 Ответ

1 голос
/ 04 марта 2012

ОК исправлено !!

Причина была не связана с кодом, который я запускал и отображал по этому вопросу, он был связан с тем, как я реализовал хуки в CodeIgniter. Я расширил основной контроллер CI для ловушки (что было неправильно). Теперь я изменил ловушку, чтобы использовать метод get_instance () для получения экземпляра CI, и мне, очевидно, удалось добиться той же функциональности от ловушки, не вызывая этой проблемы.

Так что я виноват!

Спасибо за вашу помощь в любом случае!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...