Forum Webscript.Ru

Программирование => PHP => Тема начата: Alexandr от 20 Июля 2004, 08:37:40

Название: Посчитать размер страницы с учётом сессии
Отправлено: Alexandr от 20 Июля 2004, 08:37:40
Как учесть то что над страницей может сессия поработать?

Я считаю так:

//Загружаем шаблон
ob_start();
include \'includes/templates/right_frame.php\';
header("Content-Type: text/html; charset=windows-1251");
$l=ob_get_length();
header(\'Content-Length: \'.$l);
ob_end_flush();


но в right_frame.php у меня стартует сессия и все ссылки и формы добабавляются SID\'ом
А происходит это после ob_end_flush();

Т.о. вот что можно наблюдать при запросе 1-й раз
GET /right.php?1_4 HTTP/1.1
.......

HTTP/1.1 200 OK
Set-Cookie: acat=065143aff2362e9fe6bba97310eb360a; path=/
......
Content-length: 21084

....


А во-второй раз уже всё ок:
GET /right.php?1_4 HTTP/1.1
Cookie: acat=065143aff2362e9fe6bba97310eb360a

HTTP/1.1 200 OK
Content-length: 21082

Т.е. правильно посчитал размер оба раза (правда я не знаю откуда берутся 2 байта в первый раз), но в первый раз после расчёта сессия добавила ещё SID, т.о. увеличив размер страницы и ес-но страница вся не загружается....

Вопрос: как посчитать размер страницы с учётом сессии?
Название: Посчитать размер страницы с учётом сессии
Отправлено: Макс от 20 Июля 2004, 10:40:24
отключить автоматическое добавление SID , добавлять его вручную и потом считать размер.
Название: Посчитать размер страницы с учётом сессии
Отправлено: Alexandr от 20 Июля 2004, 11:13:04
Цитировать
Макс:
добавлять его вручную

не, Макс, не пойдёт... геморно больно....
лучше просто не вставлять Content-length, если способа попроще не найдётся
Название: Посчитать размер страницы с учётом сессии
Отправлено: Alexandr от 27 Июля 2004, 11:11:05
А можно узнать стартанула сессия или нет?
Название: Посчитать размер страницы с учётом сессии
Отправлено: Макс от 27 Июля 2004, 12:07:07
???
не понял, ты же сам пишешь в коде
session_start(); и так далее.
Сам знаешь, где у тебя сессия стартует.

[loading php_telepat.dll]
if (isset($_SESSION)) { } // registrer_globals = Off
[/loading]
Название: Посчитать размер страницы с учётом сессии
Отправлено: Alexandr от 27 Июля 2004, 12:19:01
я хочу универсальный модуль сделать, который подключается на каждой странице и он должен определить если ссессия стартанула, то не считаем размер страницы, иначе считаем....

так что я нормально вопрос задал

Цитировать
Макс:
if (isset($_SESSION)) { } // registrer_globals = Off

А вот за это спасиба.

А вот ты указал
Цитировать
Макс:
// registrer_globals = Off

Это к чему? Будет работать тока если registrer_globals = Off?
Или что?
Название: Посчитать размер страницы с учётом сессии
Отправлено: Макс от 27 Июля 2004, 18:07:25
Цитировать
Alexandr:
Это к чему? Будет работать тока если registrer_globals = Off?
Или что?

просто в случае register_globals = On надо учесть что могут в URL-е добавить _SESSION :
http://example.com/script.php?_SESSION[]=sds
Название: Посчитать размер страницы с учётом сессии
Отправлено: Alexandr от 28 Июля 2004, 08:40:31
понял спасибо, Макс.