|
本帖最后由 xhui_cool 于 2009-2-9 10:21 编辑
一个登陆界面,输入name,password,点击登陆进入admin_controller,
验证成功,然后设置 $_SESSION['user'] = $user_name 再重定向到主页面admin/home,
问题发生了,session丢失,在hook函数中检查 session为空, 又定向到登陆界面,再次登陆,登陆成功。。。
只有第一次登陆是这样,一旦登陆后退出登陆 重新登陆,一次成功,why?
哎,redirect 函数用的是header 定位location,firefox下有这个bug,第一次重定向会失效。。。
PHP复制代码 class Validate {
function validate_user (){
$uri =& load_class ('URI');
$type = $uri->segment(1);
$param = $uri->segment(2);
if($type == "admin" && !empty($param)){
if(!isset($_SESSION['user'])){
$CI = & get_instance ();
$CI->load->helper('url');
redirect ('/admin');
}
}
}
}
$hook['post_controller_constructor'] = array(
'class' => 'Validate',
'function' => 'validate_user',
'filename' => 'validate.php',
'filepath' => 'hooks'
);
复制代码 |
|