redirect无限循环
在hooks目录下建立勾子实现用户登录后台的权限,但如果用户还没有登录时打开页面,redirect一直是无限循环,导致网页都打不开,请问有什么方法解决吗?以下是勾子代码:
class MangerAuth
{
private $CI;
public function __construct()
{
$this->CI = & get_instance();
$this->CI->load->helper('url');
$this->CI->load->library('session');
}
public function auth()
{
$Config = & load_class('Config');
// 需要进行权限检查的URL
if( preg_match("/v3.*/i",$Config->config) ) -->> URL中如果都含有V3目录的话就实行判断
{
if( !$this->CI->session->userdata('USER_AUTH_KEY') ) --->>以用户ID判断用户是否已登录
{
// 用户未登陆
redirect('publics/login/'); ----->> 此处无限跳转
return;
}
}
$admin_name = $this->CI->session->userdata('username');
$admin_power = $this->CI->session->userdata('power');
很简单,跳转到 public/login 的时候不做验证。
hook 里可以判断当前的URL。 Hex 发表于 2012-2-7 15:35 static/image/common/back.gif
很简单,跳转到 public/login 的时候不做验证。
hook 里可以判断当前的URL。
谢谢Hex
在public/login里我没有做验证,如下:
if ($this->input->post())
{
}else
{
$this->smarty->display('public/login.html');
}
只是在,hook下怎么判断当前URL? 我这里用了这个if( preg_match("/v3.*/i",$Config->config) ) 不可以吗? clichen 发表于 2012-2-7 16:02 static/image/common/back.gif
谢谢Hex
在public/login里我没有做验证,如下:
if ($this->input->post())
不好意思搞错了,刚学CI请见谅,获取当前URL 是current_url() 我也是刚会用钩子函数,我还是不明白,
redirect('publics/login/'); ----->> 此处无限跳转
这个问题如何解决的,楼主有关键代码吗?
页:
[1]