1

因此,我尝试单击注销链接并结束会话,但它似乎不起作用。

链接位于此处:应用程序-> 视图-> 模块-> header.php 看起来像这样:

<a href="../admin/logout">Logout</a>

在管理控制器中,我具有以下功能:

public function logout()
{
    $this->session->unset_userdata('logged_in');
    session_destroy();
    redirect('admin', 'refresh');
}

我的管理员路由文件如下所示:

$route['admin/(:any)'] = 'admin/view/$1';
$route['admin'] = 'admin';

管理员视图文件夹位于:views -> admin

问题:当我单击注销链接时,它什么也不做。就像在我的管理员中一样,如果没有会话,它会被重定向到登录屏幕。那行得通,但是当我注销时,如果它重定向到管理页面,如果没有会话,则假设重定向到登录页面,为什么什么也没发生?

4

2 回答 2

1

为什么在注销时重定向到管理员?只是出于好奇。

试试这个,听起来你的链接本身就是问题所在。使用 base_url() 意味着您不必担心相对 url 会根据您在站点中的深度而变得混乱。

<a href="<?php echo base_url();?>admin/logout">Logout</a>
于 2012-11-12T22:04:30.983 回答
0

$route['admin/(:any)'] = 'admin/view/$1';

此代码正在重定向admin/logoutadmin/view/logout

所以,就像你说的,$route['admin/logout'] = 'admin/logout';在你的路线顶部附近添加应该会把你带到正确的页面

于 2012-11-13T04:02:56.270 回答