2014-02-03 2 views
1

Да, я знаю, что это уже сделано, но эта проблема другая.Ограничитель кеша сеанса

Ошибки я получаю:

Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at /home/u5558315/public_html/admin/index.php:1) in /home/u5558315/public_html/admin/includes/php/header.php on line 3 

Я смотрел, если есть белое пространство впереди и позади PHP начальный тег, конечный тег и все, что до фактического session_start().

session_start(); - первое, что на скрипте PHP после фактического тега <?php. Я также пробовал ob_start(), но также не смог исправить ошибку.

header.php

<?php 
ob_start(); 
session_start(); 
include('includes/php/functions.php'); 
if (!isset($_SESSION['login'])) { 
redirect('login.php'); 
} 
$now = time(); // checking the time now when home page starts 
if($now > $_SESSION['expire']){ 
echo '<script type="javascript"> 
alert("Your Session Has Timedout"); 
</script>'; 
session_destroy(); 
} 
ob_end_flush(); 
?> 

index.php

<?php 
include('includes/php/header.php'); 
?> 

Все вещи, предложенные другими вопросами StackOverflow не смогли работать. Есть ли что-нибудь еще, что я мог бы сделать, чтобы исправить проблему?

С уважением, Тим Вос

+0

вывод в 'functions.php'? –

+0

Попробуйте добавить 'var_dump (ob_get_contents());' перед началом сеанса. В буфере должно быть что-то. Вы могли бы просто сделать «ob_clean()», чтобы исправить некоторые пробелы, которые были напечатаны раньше, но вы действительно должны найти проблему в своих сценариях. – 2ndkauboy

+0

Я только что проверил, он не имеет ничего общего с ошибкой, и он также не имеет ошибок – TimTims

ответ

0

Что функция Перенаправление делать?

Ошибка показывает что-то в строке 5. Таким образом, это что-то с функцией перенаправления.

Я думаю, что это должно решить вашу проблему.

if (!isset($_SESSION['login'])) { 
    header('location:login.php'); 
    exit; 
} 
+1

Должен быть абсолютный путь после заголовка «Местоположение:», читайте здесь: http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html –

+0

Это была моя ошибка. Я попытался поставить сессию после включения, но также потерпел неудачу. Но это была ошибка, когда она все еще была там. Позвольте мне обновить ошибку. Функция перенаправления - это еще один способ перенаправления, который не использует 'header (Location:)'. – TimTims

0

Я честно не знаю, как я его исправил или даже исправил, но он работает.

Хост может изменить что-то в конфиге, чтобы исправить это, но я честно не знаю.

Спасибо за ответы

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