Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Небольшой вопрос по cookies
Форумы портала PHP.SU » » Вопросы новичков » Небольшой вопрос по cookies

Страниц (1): [1]
 

1. lamer6666 - 11 Мая, 2012 - 23:25:12 - перейти к сообщению
Доброго времени суток уважаемые.
Вопрос общего характера:
Иногда бывает так, что необходимо выполнять операции до отправки заголовка в браузер, например при установки cookies.
А как быть, если например необходимо установить cookies в процессе выполнения php кода который выполняется уже после отправки заголовка в браузер (например вывожу html заголовок, затем начинаю выводит меню и в процессе вывода меню пишу его "состояние" в cookies)?
Спасибо!
2. OrmaJever - 11 Мая, 2012 - 23:38:57 - перейти к сообщению
Вобще-то почти любые проблемы с отправкой заголовков решаемы перенесением условия вверх, но даже если они не решаемы то можно использовать буферизацию.
ob_*
3. sKaa - 11 Мая, 2012 - 23:45:59 - перейти к сообщению
lamer6666, а в чем собственно проблема разобраться с такой мелочью как куки\сессии задолго до того, как в браузер что-либо полетит? Вообще конечно самый лучший вариант это отделение пхп от хтмл кода, но это вам так сразу осилить не выйдет.
Но буфера тоже выход, хотя скорей и костыль в данном случае. хз хз.
4. LIME - 11 Мая, 2012 - 23:51:10 - перейти к сообщению
у вас

или
PHP:
скопировать код в буфер обмена
  1. $html='ororo';
  2. $html.= 'ururu';
  3. //.......
  4. echo $html
  5. ?>
5. sKaa - 11 Мая, 2012 - 23:57:53 - перейти к сообщению
LIME, у кого это - "у нас"?
(Добавление)
На сколько я помню буферов много не бывает. Нужно каждый раз переносить содержимое в переменную, очищать буфер, заполнять заново и так каждый раз. Ну чем не костыль?
6. DelphinPRO - 12 Мая, 2012 - 00:33:42 - перейти к сообщению
в самом начале скрипта напишите
Это включит буферизацию вывода. А потом перемешивайте HTML с PHP и HEADERS хоть до опупения.
(Добавление)
Правда не помню, можно ли переопределять эту опцию через функцию.
Если нет, то можно через .htaccess
CODE (text):
скопировать код в буфер обмена
  1. php_value output_buffering On

 

Powered by ExBB FM 1.0 RC1