Все учебные пособия говорят, что нужно начинать сеанс. Они не говорят, что это должно быть на всех страницах на веб-сайте, или на некоторых, или только на 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