0

我正在使用 cakephp 2.0 创建一个网站。我想在我的布局中添加登录/注销链接。对于登录用户,只有注销链接应该可见,对于访客用户,只有登录链接应该可见。如何做到这一点?

4

3 回答 3

3

user假设您将 AuthComponent 用于用户会话,您可以使用静态方法检查用户会话是否存在。这也包含在文档中。例如:

if (AuthComponent::user()):
  // The user is logged in, show the logout link
  echo $this->Html->link('Log out', array('controller' => 'users', 'action' => 'logout'));
else:
  // The user is not logged in, show login link
  echo $this->Html->link('Log in', array('controller' => 'users', 'action' => 'login'));
endif;
于 2013-07-04T12:14:20.230 回答
2

嘿,这是我在 cakePHP 3.x 中的做法

 <?php
if($this->request->Session()->read('Auth')) {
   // user is logged in, show logout..user menu etc
   echo $this->Html->link(__('Log Out'), ['controller' => 'Users', 'action' => 'logout']); 
} else {
   // the user is not logged in
   echo $this->Html->link(__('Log in'), ['controller' => 'Users', 'action' => 'login']); 
}
?>
于 2016-02-19T08:17:38.423 回答
0

调用注销功能,如

function logout(){
    $this->Cookie->destroy('Your Cookie name goes here');
    if($this->Auth->logout($this->data)){
        //auto redirected
    }
}
于 2013-08-03T08:38:52.873 回答