Kohana 3.2 - База данных сессий - PullRequest
       15

Kohana 3.2 - База данных сессий

0 голосов
/ 02 ноября 2011

Я использую Kohana 3.2 и у меня проблемы с базой данных сессий, каждый раз, когда я использую Session :: Instance () на своем сайте, я получаю новую запись в базе данных. также сеансы не работают вообще, даже если я установил новое значение для него

на странице входа

public function action_index()
{
    if ( Session::instance()->get('logged'))
        $this->request->redirect('home');


    $this->response->body(View::factory('pages/login'));

}

в функции авторизации

public function action_authenticate()
{
    $username = $this->request->post('username');
    $password = $this->request->post('password');

    $user = ORM::factory('user');
    $data = $user->user_login($username, $password);

    if ( $data == $username){


         Session::instance()->set('logged', true);

         $this->request->redirect('home');

    }
    else
    {
        echo "incorrect username or password";
    }

и на домашней странице я просто перенаправляю обратно на страницу входа, если вход не установлен

 function action_index(){

    if (  ! Session::instance()->get('logged'))
        $this->request->redirect('login');


   $this->template->header = View::factory('pages/header')->render();
   $this->template->footer = view::factory('pages/footer')->render();
   $data['sidebar'] = View::factory('pages/sidebar')->render();
   $this->template->content = View::factory('pages/home',$data);

}

в bootstrap.php я добавил Session :: $ default = 'database'; поэтому он использует базу данных по умолчанию. если я удаляю режим базы данных, он работает просто отлично, и если он есть, я получаю все время 3 записи базы данных, так как я вызываю Session :: instance 3 раза?

Я новичок в Кохане. но не новый для php.

спасибо за помощь

1 Ответ

0 голосов
/ 10 ноября 2011

набор Cookie :: $ salt в bootstrap.php. Добавьте эту строку в ваш bootstrap.php.

Cookie::$salt = 'YourSecretCookieSalt';
...