在处理会话时,我不确定该怎么做。
登录并设置会话数据后。
如何将私人网页仅显示给已登录的人。
我是否必须对我的所有观点进行这种验证?
<?php
if($this->session->userdata('is_loggedin')!=1)
{
redirect('KGindex/index','refresh');
}
?>
我甚至不确定这是否正确,现在它搞砸了我的代码。功能不再起作用了。
我在哪里运行会话验证?
答案 0 :(得分:0)
您希望在控制器中而不是在视图中检查。例如
class Account extends CI_Controller {
public function index()
{
if($this->session->userdata('is_loggedin')!=1)
{
redirect('KGindex/index','refresh');
}
}
}
如果您知道控制器中的每个功能都要求用户登录,那么您可以在__construct()
函数中包含检查,因为每当访问该类时都会调用此函数。因此,您只需要将代码放在一个地方。
class Account extends CI_Controller {
public function __construct()
{
if($this->session->userdata('is_loggedin')!=1)
{
redirect('KGindex/index','refresh');
}
}
public function index()
{
//__construct() has already been called
}
}