CakePHP элемент входа - PullRequest
0 голосов
/ 09 мая 2011

Может быть, простой вопрос, но как мне изменить окно входа в систему после входа в систему. Например, «Добро пожаловать, пользователь»Я не могу найти хорошие примеры ...Мой код выглядит как эта функция users_controller login {} .. с элементом login

Ответы [ 2 ]

2 голосов
/ 09 мая 2011

См. Здесь в качестве примера: 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 голосов
/ 09 мая 2011

Я полагаю, что вам нужно действие / представление, которое может быть отображено как зарегистрированными, так и не зарегистрированными пользователями.

Как и в случае с 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');
}
?>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...