Как избавиться от ошибки, возникающей при запуске сессии?
Доброй ночи всем! Столкнулся с такой проблемой: php выдает ошибку (Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at Z:\home\php-trainig\www\db-practic\index.php:67) in Z:\home\php-trainig\www\db-practic\pages\add.php on line 1) о том, что заголовки были уже переданы при запуске сессии. В принципе можно перенести старт сессии в самое начало индексного файла и проблема решится, но дело в том, что я подгружаю в индексный файл, а именно уже в body определенные страницы с помощью require_once, и в одной из этих страниц я работаю с сессиями. Так как же быть в таком случае? Получается что заголоки всегда раньше будут отправляться, так как страница с сессиями подгружается в body, а до body есть еще head со стилями и т.д. Помогите, пожалуйста разобраться с данной проблемой!
Кстати, то же самое происходит, если в одном из подключаемых файлов произвожу редирект с помощью header("Location: somepage.php");
Вроде сработало. Но для чего тогда функция ob_end_flush()? И, вызвав в самом начале ф-цию ob_start(), не получу ли в последующей работе какие-нибудь проблемы?
Денис: если нет сессии, то создать. (или ставьте открытие сессии выше по логике скрипта)
PS: Советую разобраться и пересмотреть/нарисовать архитектуру Вашего приложения. Пока же - Вы придумываете её "на ходу"...