我是CodeIgniter的新手。
我正在尝试设置一个用户必须登录才能查看网页的网站。来自Java,我正在采用分层方法。
我的想法是编写自己的Controller基础:
<?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. //他们需要登录,将其发送到登录页面。
与
有更好的方法吗?
谢谢, 布雷克
答案 0 :(得分:2)
如果加载'url_helper',那里就有一个重定向功能。有关详细信息,请阅读有关url helper的文档。
答案 1 :(得分:2)
重定向很简单。
只需使用:
redirect('controller/method');
是的,加载url帮助程序以访问重定向功能。
$this->load->helper('url);
由于url helper经常使用,你应该在config / autoload中自动加载它。
答案 2 :(得分:1)
你也可以使用这样的东西
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');
}
}
你可以在此基础上构建