Intereting Posts
Jquery load () html-файл, содержащий JavaScript Базовый php для установки ширины столбца в Joomla Как получить подстроку из строки после определенного слова Значение Foreach из POST из формы Самый эффективный способ вызова конечной точки PHP с помощью jQuery Использование таймера обратного отсчета jquery с mysql datetime? Как остановить PHP от отправки данных клиенту, пока все еще запущен PHP-код на сервере? Преобразование файлов в blob для сохранения в базе данных Как я могу выполнять политику авторизации в Laravel 5.3? Санитация регулярных выражений, добавленных пользователем в PHP XSL – получите SUM цены PHP Xpath: получить все значения href, содержащие иглу Может ли определение множества констант вызвать проблемы с производительностью или памятью? Сохранение файла .xls с помощью fwrite Запрос Ajax в среде prod вызывает отказ в доступе (пользователь не прошел полную проверку подлинности)

Неопределенная переменная: $ _SESSION

Я получаю ошибки E_NOTICE в основном файле CakePHP, когда он пытается ссылаться на cake/libs/cake_session.php line 372 сеанс ( cake/libs/cake_session.php line 372 ):

 function read($name = null) { if (is_null($name)) { return $this->__returnSessionVars(); } if (empty($name)) { return false; } $result = Set::classicExtract($_SESSION, $name); } 

Я выполнил поиск через свой код (в каталоге app /), и я не могу найти ссылки на $_SESSION или session_destroy . Я что-то пропустил?

Эта ошибка появляется, когда я пытаюсь выполнить любые модульные тесты. Это нормально? Я очистил каталог cake/ и заменил его на другую (такую ​​же версию), чтобы убедиться, что я не случайно не модифицировал что-либо в основных файлах, но я все равно получаю ту же ошибку. Я не уверен, что это всего лишь недостаток в рамках или что-то еще.

РЕДАКТИРОВАТЬ

Ниже приведены результаты тестового запуска в командной строке:

 Welcome to CakePHP v1.3.11 Console --------------------------------------------------------------- App : app Path: /var/www/program/app --------------------------------------------------------------- CakePHP Test Shell --------------------------------------------------------------- Running app case models/owners_equity E_NOTICE: Undefined variable: _SESSION in /var/www/program/cake/libs/cake_session.php on line 372 E_NOTICE: Undefined variable: _SESSION in /var/www/program/cake/libs/cake_session.php on line 372 ERROR->Unexpected PHP error [Undefined variable: _SESSION] severity [E_NOTICE] in [/var/www/program/cake/libs/cake_session.php line 372] in testGenerateOwnerWithdrawals in BalanceTestCase in /var/www/program/app/tests/cases/models/owners_equity.test.php ERROR->Unexpected PHP error [Undefined variable: _SESSION] severity [E_NOTICE] in [/var/www/program/cake/libs/cake_session.php line 372] in testGenerateOwnerWithdrawals in BalanceTestCase in /var/www/program/app/tests/cases/models/owners_equity.test.php 

Solutions Collecting From Web of "Неопределенная переменная: $ _SESSION"

Вам нужно, чтобы вы запустили сеанс в верхней части каждого PHP-файла, где вы хотите использовать $_SESSION . Как это:

 <?php session_start(); echo $_SESSION['youritem']; ?> 

Вы забыли сеанс HELPER.

Проверьте эту ссылку: book.cakephp.org/2.0/ru/core-libraries/helpers/session.html

Оказалось, что в AppModel появился какой-то дополнительный код:

в beforeFind и afterFind :

 App::Import("Session"); $session = new CakeSession(); $sim_id = $session->read("Simulation.id"); 

Я не знаю почему , но в этом и была проблема. Удаление этих строк устранило проблему, с которой я столкнулся.