JQuery проверки кода - PullRequest
       3

JQuery проверки кода

0 голосов
/ 07 октября 2018

добрый день.Я просто хочу спросить.каждый раз, когда я передаю данные из моего контроллера в jquery.это не отображалось в моем view.php.я делаю проверку в jquery.

Мой контроллер

function login_user(){
            $data = array('LoginSuccess' => FALSE, 'LoginFailed' => array());
            $this->form_validation->set_rules('username', 'Username', 'trim|required|min_length[5]|max_length[12]');
            $this->form_validation->set_rules('password', 'Password', 'trim|required|min_length[5]|max_length[12]');
            $this->form_validation->set_error_delimiters('<h6 class="text-danger">','</h6>');
            if($this->form_validation->run()){
                    $data['LoginSuccess'] = true;
            }else{
                //false
                foreach ($_POST as $err => $val):
                    $data['LoginFailed'][$err] = form_error($err);
                endforeach;
                echo json_encode($data);    
                }
            }

МОЙ JQUERY

$login.submit(function(e){
        e.preventDefault();
        var log = $(this);
        var username = $('#uname').val();
        var password = $('#psw').val();
    $.ajax({
        url:log.attr('action'),
        type: "POST",
        data: log.serialize(),
        dataType: 'json',
        success: function(res){
            if(res.LoginSuccess == true){
                alert('test');
            }else{
                $.each(data.messages, function(err,value){
                    var element = $('#' + err);
                    element.closest(".form-group")
                    .addClass(value.length > 0 ? 'has-error' : 'has-success')
                    .find('.text-danger').remove();
                    element.after(value);
                });
            }
        }
    });
});

Ответы [ 2 ]

0 голосов
/ 08 октября 2018

в файле контроллера вы должны загрузить страницу просмотра в конце.

function login_user(){
    $data = array('LoginSuccess' => FALSE, 'LoginFailed' => array());
                $this->form_validation->set_rules('username', 'Username', 'trim|required|min_length[5]|max_length[12]');
                $this->form_validation->set_rules('password', 'Password', 'trim|required|min_length[5]|max_length[12]');
                $this->form_validation->set_error_delimiters('<h6 class="text-danger">','</h6>');
                if($this->form_validation->run()){
                        $data['LoginSuccess'] = true;
                }else{
                    //false
                    foreach ($_POST as $err => $val):
                        $data['LoginFailed'][$err] = form_error($err);
                    endforeach;
                    echo json_encode($data);    
                    }
    $data['title'] = 'Login';
            $data['view'] = 'auth/login';
                }
0 голосов
/ 07 октября 2018

После того, как вы установите LoginSuccess на true, оно должно отображаться сразу после этого, или эхо должно находиться за пределами оператора if в конце.

...
if ($this->form_validation->run()){
    $data['LoginSuccess'] = true;
    echo json_encode($data);
} else {
...
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...