Если вы внимательно посмотрите на мой ответ в вашем предыдущем вопросе, самое первое упомянутое (выделено жирным шрифтом) было именно так:
Возможно, сессия запускается из включенного файла, и этого не должно быть!
Вайн прав, и я расширю его право, отвечу чуть больше!
Когда вы включаете файл child.php в Father.php, вы должны думать о коде, найденном в child.php, как о компоненте Father.php. Одна из первых вещей, которую вы делаете в скрипте Father.php (например, index). .php) - начало сессии. Вы не запускаете сеанс во включенном скрипте, потому что это может создать конфликт, так как другой сеанс уже может быть запущен.
А если у вас много файлов, (что еще хуже, если некоторые из них включены или выполняются напрямую, без единой точки входа), тогда как легко управлять всем этим ?!
Вы сказали это:
Спасибо, но проблема не в структуре моего сайта
Ну, это может быть не совсем так! Дело в том, что написание старого школьного кода (без mvc, без единой точки входа, на самом деле не объектно-ориентированного) имеет преимущество, заключающееся в очень легкой кривой обучения. ОДНАКО хотя такой код легко написать, дело в том, что такой код требует больше навыков, чтобы избежать ошибок!
С другой стороны, объектно-ориентированному подходу сложнее приступить к работе, потому что есть много вещей, которые нужно изучить (объекты, прототипы, интерфейс, релятивность (принадлежность, часть) и т. Д.) И требует другого поведения. ОДНАКО Вы определенно выиграете больше!
И последнее! Хорошо хорошо структурированный сайт заставляет сеанс управлять несколькими строками, написанными только один раз в самом начале, и это все.
Я рад, что вы двое, решая свою проблему!