где cakePhp хранит данные сессии?

alpha

Новичок
где cakePhp хранит данные сессии?

Вобщем нахожусь в месте с ограниченным инетом, попросили сделать одну вещь, потом попросили встроить ее в дизайн существующего проекта так, что б пароль в админке не набирать 2 раза. собственно, необходимо вытянуть то, с помощью чего хранится авторизация.
C cakePhp вообще не работал.
Значение Configure::write('Session.save', 'php'), но var_dump($_SESSION) после авторизации выдает array()
 

alpha

Новичок
нет, я написал свой модуль без использования cakePhp, но его нужно интегриорвать в админку. Я понимаю что костіль, но надо пока сделать хоть так. Тоесть у себя в модуле хочу проверять залогинен ли админ своими средствами. А куда cakePhp схраняет данные авторизации не нашел. Прочел что Configure::write('Session.save', 'php') означает что используется стандартные механизм сессий, но сессия пустая (
 

Mr_Max

Первый класс. Зимние каникулы ^_^
Команда форума
А просто сессии работают?
Не внутри Кейка?
Вообще ситуация странная...
Это работает?

sessiontest_controller.php
PHP:
<?php
class SessiontestController extends AppController {
	var $name = 'Sessiontest';
    function index(){
        $this->Session->write('Person.eyeColor', 'Green');
        include ($_SERVER['DOCUMENT_ROOT'].'/echoSession.php');
        die('endTest');
    }
}
?>
echoSession.php
PHP:
<?php var_dump($_SESSION); ?>
Код:
array(1) {
  ["Person"]=>
  array(1) {
    ["eyeColor"]=>
    string(5) "Green"
  }
}
-~{}~ 04.07.08 15:42:

Если ты используешь свой скрипт независимо от кейка - тогда тебе нужно установить в своем скрипте [m]session_name[/m] идентично как в кейке. По-умолчанию это CAKEPHP

Configure::read('Session.cookie');

-~{}~ 04.07.08 15:43:

Или смотри
/app/config/core.php
 

alpha

Новичок
а, ну да забыл написать, естесственно что session_name проставлял как в core.php обозначено. Спасибо большое, добрался до "большого" интернета, теперь гугл поможет.

-~{}~ 05.07.08 02:11:

гм, видимо на отдыхе не стоит работать. дома за 15 минут все сделал (
 

Mr_Max

Первый класс. Зимние каникулы ^_^
Команда форума
дома за 15 минут все сделал (
Как-то некрасиво таким объяснением причины проблемы и способа решения заканчивать топик... ;)
 

alpha

Новичок
Да собственно не смог понять где я в трех соснах и запутался.
Дома
<?php
session_name('CAKEPHP');
session_start();
var_dump($_SESSION);
?>
заработал на ура, показало все переменные внесенные в сессию cake. А не дома я потратил 4 часа, 4 из 6(бывает и столько :)) метров доступного трафика, но не работало.
Вобщем аж самому неудобно :)
 

snakekiss

Новичок
Господа, помогите разобраться в чём дело.
Новичок в CakePHP. Делал всё согласно примера в документации ссылка, но столкнулся с тем что авторизация не проходит.
Попробовал простую авторизацию, не могу понять, в сессии нет данных после входа пользователя. Причём при вводе неправильного логина/пароля выдаёт сообщение об этом. А если верные вводишь - происходит редирект, и всё. Данных в сессии найти не могу, соответственно никакие проверки что пользователь вошёл не проходят.Такое ощущение, что проверку пользователь проходит а сессию данные не попадают.
При записи напрямую в сессию например так:
PHP:
$this->Session->write('Person.eyeColor', 'Green');
при выводе
PHP:
?php var_dump($_SESSION); ?>
отображается всё верно. То есть сессия работает.
В чём может быть дело?

На всякий случай код:
app_controller.php
PHP:
<?php
class AppController extends Controller {
    var $components = array('Auth', 'Session');
    var $helpers = array('Html', 'Form', 'Session');
    
    function beforeFilter() {
        //Configure AuthComponent
        $this->Auth->allowedActions = array('index','view','display');
        $this->Auth->authorize = 'controller';
        $this->Auth->loginAction = array('controller' => 'users', 'action' => 'login');
        $this->Auth->logoutRedirect = array('controller' => 'users', 'action' => 'logout');
        $this->Auth->loginRedirect = array('controller' => 'users', 'action' => 'index');
    }
    
    function isAuthorized() {
        return true;
    }
}
?>
login.ctp
PHP:
<div id="mast">
    <?php echo $session->read('Auth.User.name'); ?>
    <?php var_dump($_SESSION); ?>
</div>
<h2>Login</h2>
<?php
    echo $this->Form->create('User', array('url' => array('controller' => 'users', 'action' =>'login')));
    echo $this->Form->input('User.username');
    echo $this->Form->input('User.password');
    echo $this->Form->end('Login');
?>
users_controller.php
PHP:
<?php
class UsersController extends AppController {

	var $name = 'Users';
  
	function login() {
    }
 
    function logout() {
        $this->Session->setFlash('Good-Bye');
        $this->redirect($this->Auth->logout());
    } 
}
?>
 
Сверху