один контроллер может отправить пользователя другому контроллеру - PullRequest
0 голосов
/ 02 декабря 2010

Я действительно новичок в CodeIgniter.

Я пытаюсь настроить веб-сайт, на котором пользователь должен войти в систему для просмотра страниц. Исходя из Java, я придерживаюсь иерархического подхода к вещам.

Я думал написать свою собственную базу контроллеров:

<?php
class MY_Controller extends Controller
{
function  Controller()
{
    parent::Controller();

    if(!$this->quickauth->logged_in())
    {
    //they need to login, send them to the login page.
    }
}
}
?>

Теперь я могу написать контроллеры, которые расширяют его, и я буду уверен, что они всегда будут входить в систему.

Вот схема для страницы входа в систему:

<?php
class login extends Controller
{
function index()
{
        //Lets just double check, they might not have to login.
    if ($this->quickauth->logged_in())
    {
    //send them to the main controller
    }
}
}
?>

Ну, как вы можете видеть, я зашел так далеко. Что мне нужно заменить:
1. // отправить их на главный контроллер
2. // им нужно войти в систему, отправить их на страницу входа.

с

Есть ли лучший способ сделать это?

Спасибо, Блейк

Ответы [ 3 ]

2 голосов
/ 02 декабря 2010

Перенаправление легко.

Просто используйте:

redirect('controller/method');

Да, загрузите помощника URL для доступа к функции перенаправления.используется часто, вы должны загрузить его в config / autoload.

2 голосов
/ 02 декабря 2010

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

1 голос
/ 03 декабря 2010

Вы также можете использовать что-то подобное

function is_logged_in()
{
    $is_logged_in = $this->session->userdata('is_logged_in');
    if (!isset($is_logged_in) || $is_logged_in != true) 
    {
     echo 'You don't have permission to access this page. <a href="http://lemonrose.net">Login</a>';
        die();
        //$this->load->view('login_form');
    }
}

Вы могли бы построить на этом

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