немного длинный вопрос. Недавно я перевел свой сайт Dev на веб-сервер для дальнейшего тестирования .. и он работал на 100% отлично до перехода. Большинство функций работают, за исключением того, что связано с заголовками.Проблемы с PHP заголовком/сеансом
Я добавил ob_start/flush ко всем местам, где я использую заголовки .. и я проверил, что я вызывал session_start в начале всех страниц (если не задано). Играл вокруг с много
things :/ But I get 1000 errors.
Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at /var/sites/p/******/public_html/index.php:3) in /var/sites/p/*******/public_html/index.php on line 4
Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /var/sites/p/party******/public_html/index.php:3) in /var/sites/p/*******/public_html/index.php on line 4
Debug active
И мой index.php (я пытался всячески) =
<!DOCTYPE html>
<html lang="en">
<?php if (!isset($_SESSION)) {
session_start();
}
?>
<?php include ('lan-config.php')?>
<?php include (ABSPATH. 'lan-header.php') ?>
<?php
?>
<body>
Я проверил, даже начинается ли сеанс, и ничего не происходит. Не говоря уже о том, что мой скрипт работает и устанавливает все переменные $ _Session, а затем обновляется, они исчезают.
Любые идеи? Я проверил, что я отправлял в заголовке/конфигурации, и я даже не использовать «заголовок Location» Д д
:)
Как босс, последний вопрос. Любая идея, почему сеанс не переносится через страницы? Например. Мой скрипт входа в систему. Меня регистрирует (100% дает мне вывод и сохраняет все в сеансе), а затем я возвращаюсь на домашнюю страницу, а сеанс имеет «unset» –
. Каждая страница должна иметь session_start для выполнения $ _SESSION var, если определенная страница не запускает session_start, тогда переменная $ _SESSION не задана. Поэтому вам нужно вызвать session_start(); каждый раз, когда вы используете $ _SESSION var. Почему невозможно переносить страницы? например, есть гонка, и 1 автомобиль уже начал бегать, пока игра еще не началась, как можно начать игру, если ее уже запустили? – daison12006013
Да, вы не должны делать 'if (! Isset ($ _ SESSION)) {' test. 'session_start' не только создает новый сеанс, но и возобновляет его. – OlivierH