Недоступны сессии из класса
Есть самописный MVC-фрэймворк, в котором страницы выглядят так: http://{domain}/{controller}/{action}
Где controller это название класса, а action название функции.
Вызов идёт так:
Код:
$XController = new $tControllerName;
$XController->{$this->aAction}();
$XController->{$this->aAction}();
Пройдись по следующим ссылкам, кажется то, что надо...
Да, я уже смотрел их. Но там описано то, что сессия вообще недоступна в скрипте вроде как, а у меня она доступна, но после вызова метода обработчика перестаёт быть доступна.
you cannot solve this because uploadify has own session ID which is created by flash player. In other words the flash player access the uploadify script as a new user and gets a new session. The only way you can solve this is to pass current page session_id through post to the uploadify script.
Разве не это?
Код:
$file = fopen('C:/777.txt', 'a');
fwrite($file, $this->aAction."\r\n");
if ($this->aAction == 'upload_files')
{
$sess_id = session_id();
$sess_name = session_name();
session_write_close();
$XController = new $tControllerName($sess_id, $sess_name);
$file = fopen('C:/777.txt', 'a');
fwrite($file, $_SESSION['AUTH']."\r\n");
}
else
$XController = new $tControllerName;
fwrite($file, $this->aAction."\r\n");
if ($this->aAction == 'upload_files')
{
$sess_id = session_id();
$sess_name = session_name();
session_write_close();
$XController = new $tControllerName($sess_id, $sess_name);
$file = fopen('C:/777.txt', 'a');
fwrite($file, $_SESSION['AUTH']."\r\n");
}
else
$XController = new $tControllerName;
Код:
function __construct($sess_id = NULL, $sess_name = NULL)
{
if ($sess_id)
{
session_write_close();
session_id($sess_id);
session_name($sess_name);
session_start();
$file = fopen('C:/777.txt', 'a');
fwrite($file, 'CONSTRUCT: '.$_SESSION['AUTH']."\r\n");
}
{
if ($sess_id)
{
session_write_close();
session_id($sess_id);
session_name($sess_name);
session_start();
$file = fopen('C:/777.txt', 'a');
fwrite($file, 'CONSTRUCT: '.$_SESSION['AUTH']."\r\n");
}
Где может быть ошибка?