2013-06-02 2 views
-1

Я действительно удивляюсь, почему это предупреждение произошло. Я думаю, что мой код в порядке, но он сказал, что заголовки уже отправлены (выход начался в ...../request.php: 1) в ...../request.php на линии 2Предупреждение: session_start() [function.session-start]: Не удается отправить ограничитель кеша сеанса?

Вот мой код

<?php 
session_start(); 
if(!isset($_SESSION['login'])){ 
session_destroy(); 
header("Location:login.php"); 
exit(); 
} 
include_once("action.php"); 
?> 

Пожалуйста, помогите мне, спасибо заранее

+0

какая именно ошибка у вас есть? Кажется, что вы отправили что-то в браузер перед заголовком() – bksi

+3

Проверьте наличие какого-либо ** пробела ** перед тегом '

+1

Вы также должны удалить подпись BOM, если в вашем файле есть файл. Старые серверы не смогут распознать подпись спецификации и отправить ее в качестве вывода. –

ответ

-1

Попробуйте положить ob_start() после session_start()

+0

после? of before ... – Musa

+1

Это не реальное решение проблемы. Это просто взломать. –

+0

он также не работает – Sovat

0

Попробуйте поместить это в верхней части страницы:

<?php ob_start(); ?> 

затем в нижней части страницы вместо этой строки кода:

<?php ob_flush(); ?> 
+0

По крайней мере, измените ваш '

+0

Он все еще не работает :( – Sovat

0

попробуйте использовать

<?php ob_get_clean(); ?> 

перед session_start. Таким образом, вы можете быть уверены, что перед вызовом функции буфера вывода, например session_start() и/или header(), не было напечатано никаких пробелов.

+0

Я использовал его, но он не работает. – Sovat

+0

Вы можете показать мне весь файл этого скрипта? – Aldee

Смежные вопросы

 Смежные вопросы