структура такая: грузится index.php, потом в него инклудится куча файлов, затем наконец вызывается login.php он проверяет введённую гет-методом инфу и в зависимости от этого ставит куки. но он не может их поставить! ругается на Warning: Cannot modify header information - headers already sent by (output started at /var/www/html/fedr/engine/inc/phrases.php:1) in /var/www/html/fedr/engine/interfaces/login.php on line 18 причем в этом phrases.php такой код: PHP: <?php if(!defined('blablabla')) die('closed'); $phrases = array( 'lang' => 'en' ); и все. там никакого вывода нет. когда я убираю весь код из файла, он начинает орать на следующий - в которой лишь определение класса, без вызовов. как грамотно ставить куки в крупных движках? я раньше давно писал в сессию переменную о необходимости установки куки и после перезагрузки страницы, в первых строках у меня проверялось наличие этой переменной. если она присутствовала - соответственно ставились куки. но я понимаю что это корявый метод. ничего в голову не приходит
в условие с куками на самые первые строчки кидай Может быть у тебя просто не назначено blablabla, и поэтому идет вывод 'closed', попробуй заменить die('closed'); на PHP: exit();
ChaaK нет, я дебажил код NOmeR1 я это знаю. меня интересует, как это применяется в серъёзных проектах. как ставить куки, если надо их поставить при определённом действии
-=Static=- я не применяю гзип и не хочу чтобы страницы вываливались полностью, только когда сгенерятся. ради куков включать буферизацию не хочется
Придумал вот что: $_SESSION['setCookie']['login'] = $login; $_SESSION['setCookie']['pass'] = $pass; а в первых строках скрипта проверять $_SESSION['setCookie'] на заполненность и устанавливать куки.