PHP сессия и несколько смешанных разделов PHP / HTML на одной странице - PullRequest
0 голосов
/ 26 июля 2010

Если у меня есть страница с несколькими <?php ... ?> разделами, чередующимися с разделами чистого HTML. Я заметил, что набор переменных $_SESSION в одном разделе <?php ... ?> недоступен в другом на той же странице.

Итак, какова лучшая практика?

1) вызывать session_start() в качестве первой строки каждого <?php ... ?> раздела?

2) есть только один <?php ... ?> раздел, охватывающий всю страницу? Если это так, я должен обернуть каждый раздел HTML в echo, что раздражает, потому что они являются элементами HTML-формы. Может быть heredoc их?

Я впервые пробую подобные вещи, но я не первый, кто это делает - какова лучшая практика?


Редактировать: Аплоги, моя глупая ошибка. Один из разделов PHP начинался с <?, а не <?php

Ответы [ 2 ]

3 голосов
/ 26 июля 2010

Если у меня есть страница с несколькими разделами, чередующимися с разделами чистого HTML.Я заметил, что набор переменных $ _SESSION в одном разделе недоступен в другом на той же странице.

Разделы тегов php <?php ... ?> не имеют ничего общего с сессией.Убедитесь, что вы поместили:

session_start()

поверх вашей страницы.

1 голос
/ 26 июля 2010

Пока вы устанавливаете заголовок перед выполнением какого-либо вывода, у вас не должно быть проблем с сеансом (так как функция session_start () также устанавливает заголовок).

На самом деле проблем снесколько разделов PHP на странице.Но я настоятельно рекомендую делать всю логику (чтение из базы данных, обработка данных формы) в отдельном файле ИЛИ в первом разделе.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...