CommerCentr
EN
Sign in

Кеширование - быть или не быть

#1
Имеем тройку
Заходим на главную.
Затем в товар
Делаем покупку
НАЗАД - корзина пуста


Имеем двойку
Заходим на главную.
Затем в товар
Делаем покупку
НАЗАД - в корзине есть товар

Вот собственно и проблема..

И тут опрос
Напишите как должна вести себя в таком случае система.
Правильно ли она вела(ведет) себя на двойке
Правильно ли она ведет себя на тройке

Задавая єти вопросы, я уже знаю решение.
Но мне интересно ваше мнение и обсуждение.
#2
@SlaSoft, по идее правильное решение когда при откате назад всё будет откатываться назад, но при этом теряется клиент который не понимает что делает, получается нужно делать неправильно и оставлять товар в корзине, ибо некоторые клиенты просто не знают как вернуться в категорию кроме как стрелочкой "назад".
#3
чисто потребительский ответ:

если я нажал кнопку купить (для примера, поиске ответов 2020 к ЗНО при покупке по предметам или той же марки авто, при поиске аккумулятора), то при уведомлении, что товар в корзине (блоки на добавление могут быть разные,от минимальной суммы, до выбора размера\опции\регистрация...)
- он находился все время заполненным и если я решил залогиниться, то сохранить данные корзины под текущего пользователся в уже авторизированном кабинете, с сохранением истории товаров (отдельно просмотренные тоже).

примерно так перефразирую пожелания при комфортном ПФ

лично мое мнение: поставить обработчик на рефа и уже на него редиректить, так бы корректнее было
#4
yura_co@SlaSoft, по идее правильное решение когда при откате назад всё будет откатываться назад, но при этом теряется клиент который не понимает что делает, получается нужно делать неправильно и оставлять товар в корзине, ибо некоторые клиенты просто не знают как вернуться в категорию кроме как стрелочкой "назад".

Т.е. не обновлять страницу при НАЗАД

Но какже?

Я же положил в корзину а там пусто!

Bacoпримерно так перефразирую пожелания при комфортном ПФ

М.. это не вопрос о регистрации
А именно о кнопке НАЗАД ( или я не понял твоего ответа)
#5
по ответу, то лучше данные сохранить в сесии, с записью на сторону клиента, а не сервера, напр. в печеньки или локалсторедж или тот же фаербейс, главное чтобы у него была пометка и обрабатывать корректно HTTP_REFERER, а на стороне сервера все можно логгировать, была бы логика.
#6
SlaSoftПравильно ли она ведет себя на тройке

собссно сам сабж:

Вставлене медіа: xbB7KQHPpvw

#7
наверное правильно, не вижу проблемы, особенно с тем % пользователя, который так сделает
#8
SlaSoftНАЗАД - корзина пуста

кілька раз перечитував, все ж правильною була б логіка з 2-ки, та тут підтримаю @ALarik, бо відсоток - не досить великий тих, хто так зробить, а сам факт наявності товарі в сессійному блоці - реалізовано, чисто незручна дрібничка, котра при window.history.back() - дає порожній варіант "міні-корзини"
#9
@SlaSoft , а какая цель топика ? расскажи и нам немного таинственной инфы, может ченить и возьмем на вооружение (^|^)
#10
<file path="catalog/controller/startup/session.php">
<operation>
<search><![CDATA[setcookie($this->config->get('session_name')]]></search>
<add position="before"><![CDATA[
$this->response->addHeader('Expires: Thu, 19 Nov 1981 08:52:00 GMT');
$this->response->addHeader('Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0');
$this->response->addHeader('Pragma: no-cache');
]]></add>
</operation>
</file>
<file path="admin/controller/startup/startup.php">
<operation>
<search><![CDATA[index(]]></search>
<add position="after"><![CDATA[
$this->response->addHeader('Expires: Thu, 19 Nov 1981 08:52:00 GMT');
$this->response->addHeader('Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0');
$this->response->addHeader('Pragma: no-cache');
]]></add>
</operation>
</file>


Цель топика - сделать решение
#11
насколько я вижу, то добавление в заголовок, при ответе сервер--клиент данных об отмене кэширования, вернее просчету его невалидным, но зачем ? если с 301 редиректом - понятно (кэширует резалт), то тут зачем ? что в итоге получим, если каждый раз в стартапе будет срабатывать такая вот "система некэширования" ?
#12
Потому что так работает двойка


Потому как админку нельзя кешировать
Даже по кнопке назад

Anyone can read. To post and vote, sign in.