Предупреждение о начале сеанса - невозможно отправить ограничитель кэша сеанса - заголовки уже отправлены

У меня небольшая проблема, и я надеюсь, что вы сможете мне помочь. Я не программист и не кодер, но я просто хочу исправить некоторые проблемы с моим проектом.

Здесь контекст. Мне нужно установить и использовать один из моих проектов (веб-сайт электронной коммерции) в автономном режиме на моем ноутбуке (HP - Windows7). Итак, я уже установил Appserv и импортирую базы данных. Я также копирую и вставляю все файлы в www/name папки проекта. Сайт на PHP и Javascript. Никакие CMS и шаблоны CSS не были разработаны внутренне.

Я запустил сайт в автономном режиме, используя localhost, и открыл страницу входа администратора. Я ввел свой логин и пароль и получил следующее сообщение:

* "Предупреждение: session_start() [function.session-start]: Невозможно отправить ограничитель кэша сеанса - заголовки уже отправлены (вывод начался с C:\AppServ\www\thailema_v2\controller\admin\login.php:1) в C: \ AppServ \ www \ thailema_v2 \ controller \ admin \ login.php в строке 3

Предупреждение: Невозможно изменить информацию заголовка - заголовки уже отправлены (вывод запущен в C:\AppServ\www\thailema_v2\controller\admin\login.php:1) в C: \ AppServ \ www \ thailema_v2 \ controller \ admin \ login. PHP на линии 18 "*

Поэтому я не смог добраться до своей страницы администратора и перезапустить в автономном режиме нужные мне функции. Я уже прочитал и попробовал некоторые предлагаемые решения здесь, но это не изменилось, и есть некоторые решения, которые я не мог понять, поскольку я не профессиональный программист.

В любом случае вот код страницы:

<?php
ob_start();
session_start();
$path = '../';
include_once($path."include/check_lang.inc.php");
include_once($path."include/connect.php");
include_once($path."include/login.class.php");

$objLogin=new Login();
$check=$objLogin->getLogin($_POST["customer_username"],$_POST["customer_password"]);

if($check){
    $url = $path."add_booking_info.php?lang=".$lang;
}else{
    $url = $path."payment_step1.php?error=yes&lang=".$lang;
}

header("Location: ".$url);
ob_end_flush();
?>

Поэтому я хочу войти на страницы администратора и использовать все функции администратора, но в настоящее время я не могу даже получить доступ к страницам индекса администратора из-за этой ошибки. Большое спасибо за вашу помощь и поддержку...

Оливье

2 ответа

  1. Убедитесь, что нет абсолютно никаких пробелов <?php

  2. Положил session_start() до ob_start() а не после него.

  3. Если это не помогло, попробуйте закомментировать session_start(), поскольку одно из ваших включений может уже начинать сеанс, например так: /** session_start(); **/

У меня была такая же похожая проблема. Когда я загрузил со своего компьютера на мой веб-хостинг, я получил ту же ошибку. Я удалил все пробелы, поместил session_start вверху файла, но безрезультатно. Затем посмотрел на мою версию PHP на моем локальном хосте. И это было 5,4, а онлайн было 5,3. Я обновил версию своего веб-хостинга с 5.3 до 5.4, и моя проблема исчезла.

Другие вопросы по тегам