Forum Webscript.Ru

Программирование => PHP => Тема начата: mishgan от 25 Июня 2002, 20:25:01

Название: сессии мать их...
Отправлено: mishgan от 25 Июня 2002, 20:25:01
Скрипт выдает такую ошибку
Warning: Cannot send session cookie - headers already sent by (output started at x:\\www1\\show.php:5) in x:\\www1\\show.php on line 12

Warning: Cannot send session cache limiter - headers already sent (output started at x:\\www1\\show.php:5) in x:\\www1\\show.php on line 12

строка 12   session_start();

Я так разумею что надо чтото добавить в php.ini
Название: сессии мать их...
Отправлено: xnx от 25 Июня 2002, 20:49:29
до установки сессии ничего бровсеру выводить не надо или используй output buffering
Название: сессии мать их...
Отправлено: Britva от 25 Июня 2002, 21:45:04
[off]Причем здесь \'php-скрипты\'? ушли в php[/off]
Название: сессии мать их...
Отправлено: Меняздесьдавнонет от 25 Июня 2002, 23:11:35
Хех. Так половину тем из скриптов надо перекидывать :-)
Название: сессии мать их...
Отправлено: ThE0ReTiC от 29 Июня 2002, 13:14:14
mishgan
Перенеси session_start() на строку 1. :)
Название: сессии мать их...
Отправлено: mishgan от 30 Июня 2002, 01:11:42
Ок. Все работает. Спасибо всем.
Название: сессии мать их...
Отправлено: xRUSha от 03 Мая 2003, 18:41:25
А что если session_start() на первой строке, но все равно

Цитировать
Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /var/data/www/media.byborg.ru/docs/video.php:1) in /var/data/www/media.byborg.ru/docs/video.php on line 2


Вот кусок неработающего скрипта:

session_start(); //на эту строчку он и ругается
session_register(\'user_id\');
echo "
".$user_id."";

include(\'admin/func_lib.php\');
include(\'admin/nastroyki.php\');
require "class.Template.php";
$tpl = new Template("./templates");

connect_a($hostname,$login,$password,$db_name);
.....
eval("\\$menu = \\"".$tpl->get("t_menu")."\\";");
eval("print \\"".$tpl->get("t_video_1")."\\";");  


Причем для примера сделал два примитивных скрипта

1

session_start();
session_register(\'user_id\');

$user_id = "$user";
echo "
".$user_id."";
?>





gksdjh
 



session_start();
echo "
".$user_id."";
?>
 

так вот в них значение и устанавливается и передается нормально.
Скрипт который не хочет с сессиями работать сделан на шаблонах (использован класс от http://eugeny.com/). Может быть в этом дело? И вообще, что может писать в headers already sent?
Название: сессии мать их...
Отправлено: Mog. от 03 Мая 2003, 19:14:27
Цитировать
xRUSha:
что может писать в headers already sent?
Ничего. headers already sent это не переменная какая, а сообщение об ошибке, что мол хидер уже отослан.
[off]Или это ты прикалываешся?[/off]
 А вообще, (как написано в одной умной книге) хидер может отослать и пустая строка в скрипте.
Название: сессии мать их...
Отправлено: xRUSha от 03 Мая 2003, 19:36:43
Я вообще-то догадываюсь, что такое хидер, смысл этой фразы тоже понимаю. Я не понимаю, что эту ошибку вызывает и как от этого избавится. а насчет
Цитировать
пустая строка
мне уже не смешно.
Название: сессии мать их...
Отправлено: Neter от 03 Мая 2003, 23:58:58
Mog.
Не пугай детей умными книжками. :)

Цитировать
xRUSha:
Я вообще-то догадываюсь, что такое хидер, смысл этой фразы тоже понимаю.


Классика :)


А ошибу эту вызывает то что загаловок HTTP уже послан и его обратно не вернуть.. эх.. кхм, ну ты понял :)

А быть уже посланным он может в том случае когда скрипт успел выплюнуть браузеру каую-нибудь гадкую гиппертекстину..

Так, ладно, всегда проверяй нет ли в твоём скрипте выводов текста (в частности перед "
Название: сессии мать их...
Отправлено: Меняздесьдавнонет от 04 Мая 2003, 00:18:41
бесплатный хостинг, препенд баннера
Название: сессии мать их...
Отправлено: xRUSha от 05 Мая 2003, 09:48:09
хостинг не
Цитировать
бесплатный

Камертон-Телеком называется
Название: сессии мать их...
Отправлено: xRUSha от 05 Мая 2003, 09:55:33
Спасибо Neter
несмотря на то, что "