Из кода, который вы опубликовали, вы пропускаете session_start()
Если это не входит в структуру, которая выполняет это для вас, его необходимо вызывать на каждой странице, которая будет использовать сеанс перед любым сеансомвыполняются вызовы.
Я предполагаю, что ошибка происходит после перенаправления, в вашей логике, которая проверяет это, используя isset()
или empty()
.Добавьте session_start()
на обе страницы перед выполнением любой логики сеанса.
РЕДАКТИРОВАТЬ :
Хорошо, у вас есть session_start()
.Можете ли вы print_r()
ваш $_SESSION
и проверить вывод?
Кроме того, упомянутый вами файл, который запускает начало сеанса, должен быть включен в оба файла, поскольку он необходим для установки и проверки значений из сеанса.
Перед выполнением любых условий empty()
убедитесь, что вы также запускаете isset()
.Empty не проверяет наличие ключа.
EDIT AGAIN :
Возможно ли, что ваше значение для $y
не выходит из базы данных какодно значение?Вы можете die()
в этот момент, просто распечатав значение $y
, чтобы увидеть, что выводится?