ДОбрый вечер! У меня на всех страницах сайта вылезает ошибки: Warning: session_start(): Cannot send session cookie - headers already sent by (output started at /home/lookings/public_html/app/views/layout/layout.php:6) in /home/lookings/public_html/app/core/session.php on line 12 Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at /home/lookings/public_html/app/views/layout/layout.php:6) in /home/lookings/public_html/app/core/session.php on line 12 Пишу сайт на самописном MVC ядре. Что только не пробовал: - пересохранил все файлы в UTF-8 без BOM - проверил начало всех файлов ( все начинаются с первой строки) - в php.ini поставил session.cache_limiter = public - в .index.php все ini_set заменил на @ini_set Ничего не помогает. привожу код файлов. session.php Код (Text): <?php //Session - класс для работы с сессиями class Session { //экземпляр session public static $instance; //construct protected function __construct() { session_start(); } //старт сессии public static function init() { if(!isset(self::$instance)) { self::$instance = new self(); } return self::$instance; } //массив сессии public function current() { if (!is_null($_SESSION)) { return $_SESSION; } else { return null; } } //получение значения public function get($key) { if (isset($_SESSION[$key])) { return $_SESSION[$key]; } else { return null; } } //установка значения public function set($key, $value) { $_SESSION[$key] = $value; } //очистка массива сессии public function clear() { $_SESSION = array(); } //уничтожение сессии public function destroy() { session_destroy(); } } и loyout.php Код (Text): <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html> <head> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title><?php echo $this->getTitle(); ?></title> <!-- набор инструментов Bootstrap --> <link href="<?php echo HtmlHelper::baseUrl(); ?>/bootstrap/css/bootstrap.min.css" rel="stylesheet" media="screen"> <link href="<?php echo HtmlHelper::baseUrl(); ?>/css/main.css" rel="stylesheet" media="screen"> <script type="text/javascript" src="http://code.jquery.com/jquery-1.8.2.min.js"></script> <script type="text/javascript" src="<?php echo HtmlHelper::baseUrl(); ?>/bootstrap/js/bootstrap.min.js"></script> </head> <body> <div id = 'wrapper'> <div class = 'container'> <div class="navbar navbar-inverse"> <div class="navbar-inner"> <a class="brand" href="<?php echo HtmlHelper::newUrl(); ?>"><?php echo MyApplication::get()->params('name'); ?></a> <ul class="nav"> <li><?php echo HtmlHelper::link('about', 'About', array('id' => 'about')); ?></li> <li><?php echo HtmlHelper::link('contact', 'Contact'); ?></li> <?php if (is_null(Session::init()->get('name'))) { ?> <li><?php echo HtmlHelper::link('my/login', 'Login'); ?></li> <?php } else { ?> <li><?php echo HtmlHelper::link('my/logout', 'Logout'); ?></li> <?php } ?> </ul> <form class="navbar-search pull-right"> <input type="text" class="search-query" placeholder="Search"> </form> </div> </div> <div class="row"> <div class = 'span3'> <ul class="nav nav-list"> <li class="nav-header">Menu 1</li> <li class="active"><a href="#">PHP</a></li> <li><a href="#">Python</a></li> <li><a href="#">Javascript</a></li> <li><a href="#">MongoDB</a></li> <li><a href="#">PostgreSQL</a></li> <li><a href="#">MySQL</a></li> <li><a href="#">Ruby</a></li> <li><a href="#">C/C++</a></li> </ul> <br/> <ul class="nav nav-list"> <li class="nav-header">Menu 2</li> <li><a href="#">PHP</a></li> <li><a href="#">Python</a></li> <li><a href="#">Javascript</a></li> <li><a href="#">MongoDB</a></li> <li><a href="#">Ruby</a></li> <li><a href="#">C/C++</a></li> </ul> <p> </p> </div> <div class = 'span8'> <?php include $content; ?> </div> </div> </div> <div id = 'push'></div> </div> <div id = 'footer'> <div class="container"> <p class="muted credit">Copyright © <?php echo date('Y');?> by <b><?php echo MyApplication::get()->params('name');?></b> <br/>Design: <a href="http://twitter.github.io/bootstrap">Twitter Bootstrap</a> </p> </div> </div> </body> </html> Может кто знает причину?
Re: Warning: session_start(): Cannot send session cookie ... А перед этим сообщением есть другие сообщения об ошибках? Добавлено спустя 1 минуту 2 секунды: Re: Warning: session_start(): Cannot send session cookie .... это ты зря. "собака", в данном случае, враг человека!
Re: Warning: session_start(): Cannot send session cookie ... Нет. Кроме этих двух ошибок нет никаких.
Re: Warning: session_start(): Cannot send session cookie ... loyout.php шестая строчка, начало вывода, ты видимо без ob_start делал шаблонитизатор
Re: Warning: session_start(): Cannot send session cookie ... Да без нее. Нужно где-то в начале прописать Код (Text): <?ob_start();?> ??
Re: Warning: session_start(): Cannot send session cookie ... а почему нет? если прописать в начале, код будет накапливаться и вывод произойдет автоматически при окончании скрипта. это позволит редактировать заголовки по всему коду в любом месте. удобно.
Re: Warning: session_start(): Cannot send session cookie ... osvical, а зачем тогда он меня спросил, если он проверил и всё работает? Ну в документации ещё про callback, будет легче понять как производить изменения после генерации всего.