включать и заголовок советы php - PullRequest
0 голосов
/ 21 июля 2011

я строю свой первый динамический сайт.у меня есть index.php, который основан на том, является ли следующая переменная сеанса истинной или ложной

if($_SESSION['loggedIn'])
{   
include 'logged-in/logged-in.php';
}
else{
include 'not-logged-in/not-logged-in.php';
}

not-logged-in.php отображает некоторые формы, так что вы можете либо войти в систему, либо зарегистрироваться, что вызывает функцию внутривключенный файл php.если функция login () проверяется посредством входа в систему через mysql, она устанавливает

$_SESSION['loggedIn'] = 1;
header("Location: ../index.php");

i, однако я получаю эту ошибку ...

Предупреждение: невозможно изменить информацию заголовка - заголовки уже отправлены (вывод запущенв //index.php:8) в //not-logged-in/not-logged-in.php в строке 5

извините, я '*URL, чтобы сохранить мой проект закрытым.Я родом из простого графического программиста, и это все для меня в новинку.Любые советы или рекомендации будут с благодарностью.

Ответы [ 2 ]

2 голосов
/ 21 июля 2011

Эта ошибка вызвана тем, что что-то выводится в браузер, либо с echo, print, и т. Д. Перед вызовом header().

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

1 голос
/ 21 июля 2011

эта ошибка возникает, когда вы пытаетесь отправить заголовок http (например, Местоположение в вашем коде) после есть какой-то вывод. Проверьте свой код и убедитесь, что вы не отправляете преднамеренно какие-либо выходные данные перед отправкой этого заголовка (или даже session_start ()). Кроме того, если вы используете закрывающие теги php, убедитесь, что после них не осталось ни одного пробела или символа новой строки, потому что это считается как выходной

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...