Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Время жизни корзины


thvanx

Recommended Posts

Здравствуйте! Как сократить время жизни корзины opencart 2.3 до 7 дней. 

В файле system/library/cart/cart.php

нашёл строчку

$this->db->query("DELETE FROM " . DB_PREFIX . "cart WHERE (api_id > '0' OR customer_id = '0') AND date_added < DATE_SUB(NOW(), INTERVAL 2 MONTH)");

 

Пробовал, заменить "2 MONTH" на 7 DAY  - не сработало

 

Надіслати
Поділитися на інших сайтах


11 минут назад, mpn2005 сказал:

Нужно так:
$this->db->query("DELETE FROM " . DB_PREFIX . "cart WHERE date_added < DATE_SUB(NOW(), INTERVAL 7 DAY)");

Отличное решение, но лучше через ocmod ;)

  • +1 1
Надіслати
Поділитися на інших сайтах

29 минут назад, markimax сказал:

Отличное решение, но лучше через ocmod ;)

Это понятно.

Но поди разбери что там у ТС. Т.к. оригинальный запрос выглядит так:

$this->db->query("DELETE FROM " . DB_PREFIX . "cart WHERE (api_id > '0' OR customer_id = '0') AND date_added < DATE_SUB(NOW(), INTERVAL 1 HOUR)");

Я подсказал куда копать, а финальное оформление пусть каждый сам решает как делать.

 

  • +1 1
Надіслати
Поділитися на інших сайтах

Благодарю за помощь, в итоге какой код правильный и какой вставлять? 

Этот? только изменив 1 HOUR на 7 DAY 

$this->db->query("DELETE FROM " . DB_PREFIX . "cart WHERE (api_id > '0' OR customer_id = '0') AND date_added < DATE_SUB(NOW(), INTERVAL 1 HOUR)");
Надіслати
Поділитися на інших сайтах


7 часов назад, thvanx сказал:

Благодарю за помощь, в итоге какой код правильный и какой вставлять? 

Этот? только изменив 1 HOUR на 7 DAY 


$this->db->query("DELETE FROM " . DB_PREFIX . "cart WHERE (api_id > '0' OR customer_id = '0') AND date_added < DATE_SUB(NOW(), INTERVAL 1 HOUR)");

Это штатный запрос. Он чистит только для незалогиненных покупателей.

Если надо чистить для всех то запрос заменяем на этот:

$this->db->query("DELETE FROM " . DB_PREFIX . "cart WHERE date_added < DATE_SUB(NOW(), INTERVAL 7 DAY)");

И не копируйте код из сообщения на форуме. Лучше скопируйте из письма.

Т.к. при копировании на форуме иногда вставляются левые непечатные символы. И сайт упадёт с ошибкой.

 

  • +1 1
Надіслати
Поділитися на інших сайтах

а можно и мне вопрос? дабы не плодить темы?

у меня обратная ситуация, корзина живет совсем не много, может минут 10, как увеличить время жизни? модуль,настройки? куда копать?

 

Спасибо.

Надіслати
Поділитися на інших сайтах


1 час назад, AlexDW сказал:

увеличить время жизни сессии + править класс cart (см.выше)

 

либо использовать такой модуль, не зависящий от времени сессий

 

 

Кроме времени жизни сессии - необходимо не забывать про session.cookie_lifetime.

Подробнее тут: https://www.php.net/manual/ru/session.configuration.php

Практически никто не учитывает факт того, что пользовтель может закрыть браузер!

 

Надіслати
Поділитися на інших сайтах


Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку
×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.