2011-05-09 75 views
-1

也许一个简单的问题,但我怎么在登录后更改我的登录框。如“欢迎用户”
我不能找到很好的例子......

我的代码看起来像这样 users_controller 功能登录{ } ..与login元素CakePHP的Login元素

+0

发布您的代码,所以我们可以来看看! – Drewdin 2011-05-09 13:13:50

回答

2

在这里看到的例子:http://groups.google.com/group/cake-php/browse_thread/thread/56ff0ce37fb06a30

你有2种选择:

  1. 根据您的登录状态,选择其他元素,如:

     
    function login() { 
        if ($isUserLoggedIn == false) { 
         // render login element 
        } else { 
         // render welcome element 
        } 
    } 
    
  2. 这是更坏的选择在登录元素添加逻辑,如:

     
    if (!$isUserLoggedIn) { 
        // echo html and code for login 
    } else { 
        // echo html and code for welcome 
    } 
    
0

我假设你想要一个可以被记录和未登录用户渲染的动作/视图。

类似riky是下面的代码可能会帮助你

在你的控制器:

//check if user is logged in and set $user_details variable in the view 
if($this->Auth->User()){ 
$user_details = $this->Auth->User(); 
} 
$this->set(compact('user_details')); 

在你看来:

<? //check if $user_details variable is set (user is logged in) and display the correct element 
if(isset($user_details){ 
echo $this->element('welcome_box',array('user_details'=>$user_details)); 
}else{ 
echo $this->element('login_box'); 
} 
?> 
+0

谢谢我解决了这个问题! – NDeveloper 2011-05-09 15:17:22