Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Помогите избавиться от ошибки!
 
 автор: nickmas   (12.06.2005 в 20:30)   письмо автору
 
 

После запуска сессии и регистрации переменной

492: session_start();
493: $logged = 1;
494: session_register("logged");

выдает ошибку:

Warning: Cannot send session cookie - headers already sent by (output started at d:\kolya\internet\server_1\www\account_page.php:15) in d:\kolya\internet\server_1\www\account_page.php on line 492

Warning: Cannot send session cache limiter - headers already sent (output started at d:\kolya\internet\server_1\www\account_page.php:15) in d:\kolya\internet\server_1\www\account_page.php on line 492

Подскажите, как избавиться от этой ошибке?

   
 
 автор: Евгений Петров   (12.06.2005 в 20:43)   письмо автору
 
   для: nickmas   (12.06.2005 в 20:30)
 

напишите перед session_start() символ @:

@session_start();

   
 
 автор: isset   (12.06.2005 в 21:04)   письмо автору
 
   для: Евгений Петров   (12.06.2005 в 20:43)
 

? Кто вас этому учил?
Это лишь подавит вывод ошибки и испортит логику скрипта.


Читайте http://phpfaq.ru/headers

   
 
 автор: cheops   (12.06.2005 в 21:42)   письмо автору
 
   для: nickmas   (12.06.2005 в 20:30)
 

До строки 492 не должно быть вывода в окно браузера. Дело в том, что всё это инициирует отправку заголовков клиенту, так как заловки должны быть отправлены строго до тела самого документа. Сессия устанавливается через сессионные куки, которые в свою очередь устнавливаются также через заголовки - если до session_start() имеется какой-то вывод в окно браузера, то к тому времени когда интерпретатор доходит до этой функции - все заголовки отправлены - происходит вывод тела документа и дополнительные заголовки отправлены быть не могут. Подробнее можно почитать по ссылкам приведённым в теме http://www.softtime.ru/forum/read.php?id_forum=1&id_theme=2775

PS Если отправить заголовки нужно всё-таки именно из этого места, а не раньше, то следует поместить весь вывод в буффер и отправить его клиенту в конце скрипта. Для этого предназначены фукнции управления буффером http://www.softtime.ru/group/id_group=12

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования