доступ к переменной сеанса cakephp из webroot

#php #cakephp

#php #cakephp

Вопрос:

У меня есть приложение cakephp, также у меня есть другое приложение для чата (не cake), поэтому, чтобы получить доступ к приложению для чата, я разместил его в app / webroot. Из cake, после входа в систему, я настраиваю сеанс, используя этот метод-> Сессия-> запись. Как я могу получить значения этого сеанса из php-скрипта, который размещен в приложении чата?

Комментарии:

1. Хм… как и почему вы разместили приложение чата в app / webroot? Как теперь перейти к вашему webroot?

2. раньше мы размещали проекты, не связанные с cake, такие как форум, чат, под webroot. чтобы мы могли получить к ней доступ с помощью URL, подобного mycakeapp.com/forum и т.д. Что-нибудь не так с этим?

3. Я предлагаю вам использовать cakephp component or plugin для этой цели. нравится -> bakery.cakephp.org/articles/wilsonsheldon/2009/01/13 /…

Ответ №1:

вы должны поместить ее на тот же уровень, что и app /, поскольку это не cake, использование webroot не рекомендуется: S. Прочитайте комментарий Rikesh и попробуйте сделать это

тем не менее, вы можете обращаться к своим переменным, как всегда… CakePHP — ЭТО PHP, поэтому каждое $this->Session->write(); ваше использование будет находиться в суперглобальной переменной $_SESSION.

как вы получаете к ней доступ

 session_name("CAKEPHP");
session_start();
$_SESSION['variable'];
  

Имя_сессии_ — это имя, которое вы даете своему сеансу, если оно не указано, вы можете пропустить эту инструкцию. Если она используется, используйте то же имя, я думаю, что cakephp по умолчанию — CAKEPHP.

(можно узнать по debug(session_name()); )

Если вы не знаете часть переменной, попробуйте использовать var_dump ($ _SESSION); чтобы посмотреть, что у вас есть

Обычно cake сохраняет данные аутентификации в $_SESSION[‘Auth’]

Надеюсь, это поможет вам 🙂