我正在使用cakephp 2.0创建一个网站。我想在我的布局中添加登录/注销链接。 对于登录用户,只有注销链接可见,对于访客用户,只有登录链接可见。怎么做到这一点?
答案 0 :(得分:3)
假设您正在使用AuthComponent进行用户会话,您可以检查用户会话是否存在静态user
方法。这也包含在the documentation中。例如:
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;
答案 1 :(得分: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']);
}
?>
答案 2 :(得分:0)
调用注销功能,如
function logout(){
$this->Cookie->destroy('Your Cookie name goes here');
if($this->Auth->logout($this->data)){
//auto redirected
}
}