Strict Standards: Resource ID#32 used as offset, casting to integer (32) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/fm.class.php on line 401

Strict Standards: Resource ID#34 used as offset, casting to integer (34) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/fm.class.php on line 401

Strict Standards: Resource ID#35 used as offset, casting to integer (35) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/fm.class.php on line 401
ТвойWeb :: Версия для печати :: Куки в ExBB
ТвойWeb » » ExBB - лучший форум на файлах » Куки в ExBB

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

1. CaptainFlint - 31 Августа, 2005 - 18:47:50 - перейти к сообщению
Для собственного интереса пытаюсь разобраться, как ExBB запоминает статус тем и форумов: прочитаны/непрочитаны. Нашёл, что для тем статус хранится в cookie t_visits в виде сериализованного массива. Но возникли следующие вопросы:
1. Почему у t_visits такой маленький срок действия - всего сутки?
2. Идентификатор темы получается простой "склейкой" номеров форума и темы:
$top_id = $inforum.$intopic
Непонятно, как в таком случае отличить, скажем, тему №3 в 11-м форуме от 13-й темы в первой форуме, если оба варианта дают для идентификатора число 113...
2. TvoyWeb - 01 Сентября, 2005 - 04:14:31 - перейти к сообщению
CaptainFlint
1. Честно говоря даже не обращал внимания на срок этой куки.
И пока не посмотрю какой у нее срок ничего не смогу сказать.
2. Да есть такая трабла. С ней еще до конца не разбирался.
Я сейчас сижу разбираюсь с админкой форума. Когда перейду к фронтенду и разберусь, то оязательно отпишусь.
3. CaptainFlint - 01 Сентября, 2005 - 04:44:25 - перейти к сообщению
TvoyWeb пишет:
1. Честно говоря даже не обращал внимания на срок этой куки.
И пока не посмотрю какой у нее срок ничего не смогу сказать.

Там просто прямо в коде видно (topic.php):
PHP:
my_setcookie('t_visits',serialize($t_visits),86400);

Как это проявляется (и проявляется ли) в браузере, я пока не смотрел и не разбирался...

TvoyWeb пишет:
2. Да есть такая трабла. С ней еще до конца не разбирался.

Первое, что придумалось - это сделать индекс не числовым, а строковым, типа "11.3" - 11-й форум, 3-я тема (ну или "11:3" - где-то так уже сделано в форуме...). Насколько удачно/неудачно такое решение и чем именно? Понятно, что менее эффективно, чем числа, но кроме этого есть ли недостатки?
4. TvoyWeb - 01 Сентября, 2005 - 04:53:05 - перейти к сообщению
CaptainFlint пишет:
Насколько удачно/неудачно такое решение и чем именно? Понятно, что менее эффективно, чем числа, но кроме этого есть ли недостатки?

Собственно я не вижу никаких особых недостатков. Но надо смотреть скрипты где эта кука вызывается и применяется.
5. Леголегс - 01 Сентября, 2005 - 15:59:58 - перейти к сообщению
TvoyWeb
Я в JS Forum тоже ломаю голову над этим вопросом. Чтоб и куки на килобайты не получились и не терялось ничего. Думаю сделать так:
форум:тема*тема*тема*тема/форум:тема*тема*тема*тема
ИМХО, самое экономное, что можно придумать. А у меня ещё и нет функции serialize Недовольство, огорчение JS до PHP далеко...
6. TvoyWeb - 01 Сентября, 2005 - 17:49:40 - перейти к сообщению
Леголегс
Вообще, честно говоря, по прошествии определенного времени я понимаю что с куками Варлок конечно намудрил. Но с другой стороны понимаю, что он не смог отследить всех ошибок из за подавления ошибок в скрипте. Только не понимаю зачем он давил ошибки.
Кстати вот еще один хороший тон в написании скриптов: выводить на экран все ерроры, варнинги и нотиесы. Говорю по собственному опыту.
7. ETC - 01 Сентября, 2005 - 17:52:50 - перейти к сообщению
А что мешает держать данные в сессии? Не на компе пользователя, а в $_SESSION...
Или это невыгодно?

Форум на AlfaSpace.NET


Powered by ExBB
ExBB FM 1.0 RC1 by TvoyWeb.ru
InvisionExBB Style converted by Markus®

[Script Execution time: 0.059]     [ Gzipped ]



Notice: ob_end_flush(): failed to send buffer of ob_gzhandler (1) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/page_tail.php on line 33