Проблема изменения URL после публикации формы в Codeigniter - PullRequest
0 голосов
/ 15 мая 2018

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

Можно ли управлять с помощью маршрутизации?

<?php
public function index(){
$this->load->view('login');
}

public function login_process(){
....... code......

if($login==true){
$this->load->view('dashboard'); // Url is not changing but view is loaded
}else{
$this->load->view('login');
}

}

?>

Ответы [ 2 ]

0 голосов
/ 15 мая 2018

Вы должны создать еще один метод с именем dashboard, и вы должны перенаправить его следующим образом

class Example_Controller extends CI_Controller {

    public function index(){
        $this->load->view('login');
    }

    public function dashboard(){
        $this->load->view('dashboard');
    }

    public function login_process(){
        // Your Code
        redirect('Example_Controller/' . (($login==true) ? 'dashboard' : 'index'));
    }

}

замените Example_Controller на имя вашего контроллера.

и добавьте следующие строки в rout.php

$route['login'] = 'Example_Controller/index';
$route['dashboard'] = 'Example_Controller/dashboard';
0 голосов
/ 15 мая 2018

Надеюсь, это поможет вам:

Используйте метод redirect() из url помощник, убедитесь, что вы загрузили его в контроллер или в autoload.php

public function login_process()
{
....... code......

if($login === TRUE)
{
    redirect('controller_name/dashboard','refresh');
    /*$this->load->view('dashboard'); */
}
else
{
    redirect('controller_name/index','refresh');
    /*$this->load->view('login');*/
}

}

Для получения дополнительной информации: https://www.codeigniter.com/user_guide/helpers/url_helper.html#redirect

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