ошибка чтения переменной сеанса в cakephp - PullRequest
0 голосов
/ 04 августа 2009

Я использую сеансы в Cakephp. У меня 3 контроллера. В пользовательском контроллере во время входа в систему я записал идентификатор пользователя в переменную Session.

Но когда я пытаюсь прочитать его на другом контроллере, я получаю значение переменной Session. Почему так ???

Редактировать:

В моем контроллере пользователей

я пишу идентификатор пользователя, который вошел как

   function login()
   {


    $this->Session->write('userId',$this->User->loginUser($this->data));
    $this->User->data=$this->data;

    if (!$this->User->validates())
        {
            $this->Flash('Please enter valid inputs','/main' );
            return; 
        }
    if($this->Session->read('userId')>0){

                    $this->Session->setFlash('Login Successful');
        $this->redirect('/main/home');
        break;

    }
    else{
        $this->flash('Username and password do not match.','/main');

    }

} 

И в моем контроллере форм я пытаюсь прочитать идентификатор пользователя переменной сеанса как ..,

  <?php
  class FormsController extends AppController 
  {

var $name = 'Forms';
var $helpers=array('Html','Ajax','Javascript','Form');
var $components = array( 'RequestHandler','Autocomplete');
var $uses=array('Form','User','Attribute','Result','Invite','Share','Choice');


 function index() {}


     function design() 
     {
            $userId=$this->Session->read('userId');echo $userId;
            $this->data['Form']['created_by']=$this->Session->read('userId');

            $userName=$this->Form->findUserName($this->data);
            $this->set('userName',$userName);
     }
}

Но этот идентификатор пользователя не отображает переменную сеанса, которую я написал ....

Почему это происходит ..

1 Ответ

0 голосов
/ 04 августа 2009
  1. Возможно, вы захотите воспользоваться встроенным Cake AuthComponent , если вы еще этого не сделали.

  2. Вы действительно проверяли возвращаемое значение $this->User->loginUser()?

  3. Можете ли вы вообще сохранить что-нибудь еще в сеансе?

  4. Посмотрите, сможете ли вы получить какие-либо подсказки из этого вопроса .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...