Все учебные пособия говорят, что нужно начинать сеанс. Они не говорят, что это должно быть на всех страницах на веб-сайте, или на некоторых, или только на 1.
И если это только 1 страница, это должна быть главная страница? Или страницу с формой, которую я создаю, которая помещает идентификатор сеанса в базу данных? Если посетитель никогда не посещает страницу с идентификатором сеанса, но они находятся на сайте, они все еще имеют идентификатор сеанса?
Вам нужно поместить это на каждую страницу, которая должна получить доступ к данным сеанса перед доступом (или созданием) любых данных сеанса.
Просто для полноты вы можете написать session_start(); на всех страницах, только в одном или ни в одном из них. Позвольте мне объяснить это.
Вам нужно запустить сеанс в каждом скрипте, где вам нужен доступ к переменной $_SESSION но вместо того, чтобы ставить session_start(); в каждом отдельном скрипте вы можете создать файл headers.php и поместить туда весь ваш повторяющийся код, включая session_start();
Если все в вашем приложении нуждается в доступе к $_SESSION вы можете забыть использование session_start(); просто установив session.auto_start = 1 в файл php.ini. Вы сможете получить доступ к $_SESSION без записи session_start(); до.
Подробнее здесь
Все, что собирается получить доступ к переменным сеанса, должно начать сеанс.
Поэтому, если у вас нет страницы php, которая не зависит от сеанса, чем каждая страница нуждается в ней.
Вам нужно объявить session_start (); на каждой странице, если вы хотите получить данные из $ _SESSION или хранить данные в $ _SESSION на этой странице. Если вам не нужно взаимодействовать с $ _SESSION, вам не нужно объявлять session_start (). @ Hmwhat