我确实有一个CI项目,其中我检查的主页功能,如果cookie已经存在。如果是,则应重定向用户。这在我的linux机器(Chrome)上运行良好,但在我的Mac(Chrome)上运行不正常 - 我不知道为什么。
这是代码:
$session = $this->session->all_userdata();
if(array_key_exists('id', $session)) {
redirect(site_url("loggedin"), "refresh");
} else {
/* set cookie */
由于
答案 0 :(得分:0)
首先,我不确定array_key_exists()
是否更好,或者isset($_SESSION['id'])
是否更好,但无论哪种方式CI都使用session->userdata()
函数内置,而FALSE
函数返回if($this->session->userdata('session_id'))
redirect('loggedin',"refresh");
//rest of code
如果未设置该值:
site_url()
另请注意,redirect()
功能中不需要redirect('loggedin');
。 CI将默认执行此操作。不过,我不确定这与你的问题有什么关系。它可能是一个浏览器错误。 {{1}}(使用位置重定向)是否有效?