2013-09-24 4 views
0

ОК, мой сайт работал некоторое время назад, тогда это произошло, когда я попытался отлаживать.session_start malfunction php

session_start(): Cannot send session cache limiter - headers already sent 
(output started  at ----------------:2) in ---------------------- on line 3 

(дефисы являются тот же сайт в одной и той же странице)

и вот коды в первые 4 строки:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 
<?php 
    session_start(); 
    include("includes/side_reservation.php"); 
?> 

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

Больше не могу понять это.

+0

возможно дубликат [Заголовки уже посланных PHP] (http://stackoverflow.com/questions/8028957/headers-already-sent-by-php) –

+0

'session_start()' должен быть первым делом вы делаете ... – War10ck

+0

хорошо, он работал, прежде чем положить его ниже doctype, в любом случае спасибо. – user2802646

ответ

2

Ваше объявление DOCTYPE в настоящее время выводится перед началом сеанса вызывается, в результате чего «заголовки уже отправленных» сообщение при попытке установить заголовок сеанса,

Начало сеанса до любого вывода в браузер.

<?php session_start(); ?> 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 
<?php include("includes/side_reservation.php"); ?> 
+0

О, это сработало спасибо. Мой сеанс сеанса был ниже этого и не возвращал никаких ошибок, поэтому, возможно, мне нужно начать ставить все стартовые коды сеанса прежде всего. – user2802646