Добавить в Codeigniter Form Validation обратный вызов, чтобы проверить, вошел ли пользователь в систему - PullRequest
0 голосов
/ 07 января 2012

Поэтому, когда форма отправлена, я хочу проверить, вошел ли пользователь, поэтому я установил обратный вызов CI следующим образом:

$this->form_validation->set_rules('comment', 'Comment', 'callback__check_login|required|min_length[8]');

public function _check_login($str)
    {
        if (!$this->data['user']->logged_in)
        {
            $this->form_validation->set_message('_check_login', 'You need to be logged in to post.');
            return FALSE;
        }
        else
        {
            return TRUE;
        }
    }

Я понимаю, что CI 'reads' слева направоправильно, поэтому сначала он должен проверить «callback__check_login», затем «required», а затем «min_length[8]», но это не так.

Сначала он проверяет «required», затем - «callback__check_login ', а затем' min_length[8] '...

WTF?

1 Ответ

0 голосов
/ 07 января 2012

http://codeigniter.com/forums/viewthread/190190/

Требуемая проверка является более высоким приоритетом, чем другие.Я думаю, что это лучший способ, если вы проверите сеанс, в который вошел пользователь или нет.Просто поставьте условие if else, это поможет вам, или вы можете написать новую функцию обратного вызова для проверки обязательного поля.и вызвать его после функции _check_login.

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