Последние темы


При перезагрузке страницы сайта на MODX REVO корзина очищается. В чем может быть проблема?

  • Всем привет!

    Есть сайт, изготовленный на MODX revo 2.3.3 (php 5.3). На нем установлен Shopkeeper 2.3.10. Всё настроено, корзина работает, но — к примеру, положил я в корзину товар, перехожу в корзину для оформления (или достаточно перезагрузить страницу) и вижу, что корзина пуста. Иногда корзина остается наполненной, но со второй перезагрузки страницы она очищается.

    Такой нюанс: если в этот момент я залогинен в админке, то всё в порядке, товар идеально себя ведет в корзине, как ни перезагружай страницы сайта. То есть, косяк проявляется лишь в том случае, если я не авторизован в админке.

    Консоль браузера пустая, версии jquery я менял-переменял. Php ниже не могу опустить — сайт сломается (установлен pdoTools). На сервере логи чистые…

    Друзья, посоветуйте, если возможно, в каком направлении копать? Полдня рою интернет — нигде даже намека на подобное не нашел!

    ЗЫ: Тема о косяке шопкипера, где в корзине подставляется дефолтный шаблон из-за версии php — совсем не то)) Она тоже была на сайте, когда стоял Php 5.6, но после смены версии php всё наладилось. Точнее, я думал, что так...(((

  • Проблема решена!

    Оказалось, что в настройках MODX переменная session_cookie_lifetime имела значение, равное 6. При условии, что по умолчанию она выставлена как 604800. Уж не знаю, кто так подшутил… Соответственно, если я правильно понимаю, данные о товарах в корзине честно хранились аж 6 секунд.

    Этот момент выяснился, когда я бросил ковырять шопкипер и принялся за изучение механизма сохранения данных в корзине. Ну, и слово за слово, как говорится! Ступил, конечно, признаю — нужно было сразу задуматься насчет времени хранения данных, а не выискивать ошибки, которых, получается, и не было вовсе.

    Единственный момент: я пока не понял, почему корзина не сбрасывалась при авторизованной админке?

 

Последние комментарии

  • @Andchir Чета не додумался. Спасибо огромное, завелось.

    Читать далее
  • Потому что в этой функции нет объекта $modx. Можно попробовать добавить такую строчку вверху функции (внутри):

    global $modx;

    Читать далее
  • Добрый день.
    Задача: Есть таблица где записываются id данных из других созданных таблиц.
    Нужно в функции filter_export и filter_import объединить данные из разных таблиц.

    Как я пробывал решить свою задачку:

    function filter_export($value_arr,$doc_id=0) { //var_dump($output_arr); //exit; $output_arr = $value_arr; if(isset($output_arr['execution'])) { $ids = $output_arr['execution']; $result = $modx->query("SELECT * FROM LKp3KJ_my_execution WHERE id = $ids"); $row = $result->fetch(PDO::FETCH_ASSOC); $output_arr['execution'] = $row[title]; } /* if(isset($output_arr['price'])) $output_arr[1] = floatval($output_arr[1]) - 200; */ return $output_arr; }

    В ответ получаю 500 ошибку на странице импорт/экспорт.

    Читать далее
  • Спасибо за содействие! Приношу извинения за неудобства.

    Читать далее