В настоящее время я работаю над проектом, который требует переменных сеанса для хранения информации о поиске, что является довольно распространенным явлением. Обычно я использовал isset (), чтобы проверить, существует ли переменная сеанса. Тем не менее, кажется, что есть проблема, которая сбивает с толку ... не уверен, что происходит. Любая помощь приветствуется. Код ...
<?php
# Check to make sure the session is started
if (session_id() != '') echo 'Session has started<br/>';
# Check every possible way I know to make sure variable is set
if (array_key_exists('adminsearchrange', $_SESSION) && isset($_SESSION['adminsearchrange'])
&& !empty($_SESSION['adminsearchrange']) && $_SESSION['adminsearchrange'] != NULL) {
echo 'Search range is set and is not empty<br/>';
echo $_SESSION['adminsearchrange'];
}
?>
Выход ...
Session has started
Search range is set and is not empty
Notice: Undefined index: adminsearchrange in /Users/.../events_items.php on line 1182
Основываясь на комментариях, я выбрал самый простой подход ... создал новый файл, все содержимое которого указано ниже. По-прежнему получаю ту же ошибку (см. Выше), и, как ни странно, она все еще ссылается на точную строку и файл (даже если этот файл не включен ни в коем случае) ... и нет, переписывания .htaccess
любого рода. Код (все в одном файле) ...
<?php
session_start();
if (session_id() != '') echo 'Session has started<br/>';
if (array_key_exists('adminsearchrange', $_SESSION) && isset($_SESSION['adminsearchrange'])
&& !empty($_SESSION['adminsearchrange']) && $_SESSION['adminsearchrange'] != NULL) {
echo 'Search range is set and is not empty<br/>';
echo $_SESSION['adminsearchrange'];
}
?>