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

Жизнь корзины


Recommended Posts

Как увеличить время жизни корзины для не зарегистрированных пользователей, хотя бы на неделю, желательно на месяц(не навредит если хранит месяц?)...

Изменил тут но не помогло!

system/library/cart/cart.php

Спойлер

// Remove all the expired carts with no customer ID
$this->db->query("DELETE FROM " . DB_PREFIX . "cart WHERE (api_id > '0' OR customer_id = '0') AND date_added < DATE_SUB(NOW(), INTERVAL 1 MONTH)");

не работает проверял несколько раз

 

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


2 часа назад, axaxaxa сказал:

Как увеличить время жизни корзины для не зарегистрированных пользователей, хотя бы на неделю, желательно на месяц(не навредит если хранит месяц?)...

Изменил тут но не помогло!

А в модификаторах после правок нажимали кнопку "Обновить"?

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

В 27.09.2019 в 21:18, mpn2005 сказал:

А в модификаторах после правок нажимали кнопку "Обновить"?

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

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


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

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

Надо ещё увеличить время жизни php сессии в настройках хостинга.

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

9 часов назад, mpn2005 сказал:

Надо ещё увеличить время жизни php сессии в настройках хостинга.

спасибо попробую, если кэш на сайте отключен оно не влияет?

 

Змінено користувачем axaxaxa
Надіслати
Поділитися на інших сайтах


9 часов назад, mpn2005 сказал:

Надо ещё увеличить время жизни php сессии в настройках хостинга.

gc_maxlifetime = 2592000

cookie_lifetime = 2592000
перестало заходить в админку поставил cookie_lifetime = 0, все ок, по идеи до перезагрузки сервера должно храниться, правильно?

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


On 9/30/2019 at 12:11 PM, axaxaxa said:

gc_maxlifetime = 2592000

cookie_lifetime = 2592000
перестало заходить в админку поставил cookie_lifetime = 0, все ок, по идеи до перезагрузки сервера должно храниться, правильно?

попробуйте в файле /system/library/session.php сделать две правки.

а)

Spoiler
if ($this->adaptor && !session_id()) {
ini_set('session.use_only_cookies', 'Off');
ini_set('session.use_cookies', 'On');
ini_set('session.use_trans_sid', 'Off');
ini_set('session.cookie_httponly', 'On');
 
if (isset($_COOKIE[session_name()]) && !preg_match('/^[a-zA-Z0-9,\-]+$/', $_COOKIE[session_name()])) {
exit('Error: Invalid session ID!');
}
 

session_set_cookie_params(0, '/');

session_set_cookie_params(ini_get('session.cookie_lifetime'), '/');

session_start();

}

б)

Spoiler
public function start($key = 'default', $value = '') {
if ($value) {
$this->session_id = $value;
} elseif (isset($_COOKIE[$key])) {
$this->session_id = $_COOKIE[$key];
} else {
$this->session_id = $this->createId();
}
 
if (!isset($_SESSION[$this->session_id])) {
$_SESSION[$this->session_id] = array();
}
 
$this->data = &$_SESSION[$this->session_id];
 
if ($key != 'PHPSESSID') {

setcookie($key, $this->session_id, ini_get('session.cookie_lifetime'), ini_get('session.cookie_path'), ini_get('session.cookie_domain'), ini_get('session.cookie_secure'), ini_get('session.cookie_httponly'));

setcookie($key, $this->session_id, time() + ini_get('session.cookie_lifetime'), ini_get('session.cookie_path'), ini_get('session.cookie_domain'), ini_get('session.cookie_secure'), ini_get('session.cookie_httponly'));

 

 
}
 
return $this->session_id;
}

 

Змінено користувачем 100napb
было актуально для 2х ветки
Надіслати
Поділитися на інших сайтах

В 01.10.2019 в 11:48, 100napb сказал:

попробуйте в файле /system/library/session.php сделать две правки.

а)

  Скрыть контент
if ($this->adaptor && !session_id()) {
ini_set('session.use_only_cookies', 'Off');
ini_set('session.use_cookies', 'On');
ini_set('session.use_trans_sid', 'Off');
ini_set('session.cookie_httponly', 'On');
 
if (isset($_COOKIE[session_name()]) && !preg_match('/^[a-zA-Z0-9,\-]+$/', $_COOKIE[session_name()])) {
exit('Error: Invalid session ID!');
}
 

session_set_cookie_params(0, '/');

session_set_cookie_params(ini_get('session.cookie_lifetime'), '/');

session_start();

}

б)

  Скрыть контент
public function start($key = 'default', $value = '') {
if ($value) {
$this->session_id = $value;
} elseif (isset($_COOKIE[$key])) {
$this->session_id = $_COOKIE[$key];
} else {
$this->session_id = $this->createId();
}
 
if (!isset($_SESSION[$this->session_id])) {
$_SESSION[$this->session_id] = array();
}
 
$this->data = &$_SESSION[$this->session_id];
 
if ($key != 'PHPSESSID') {

setcookie($key, $this->session_id, ini_get('session.cookie_lifetime'), ini_get('session.cookie_path'), ini_get('session.cookie_domain'), ini_get('session.cookie_secure'), ini_get('session.cookie_httponly'));

setcookie($key, $this->session_id, time() + ini_get('session.cookie_lifetime'), ini_get('session.cookie_path'), ini_get('session.cookie_domain'), ini_get('session.cookie_secure'), ini_get('session.cookie_httponly'));

 

 
}
 
return $this->session_id;
}

 

попробую спасибо!

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


В 01.10.2019 в 11:48, 100napb сказал:

попробуйте в файле /system/library/session.php сделать две правки.

а)

  Скрыть контент
if ($this->adaptor && !session_id()) {



ini_set('session.use_only_cookies', 'Off');
ini_set('session.use_cookies', 'On');
ini_set('session.use_trans_sid', 'Off');
ini_set('session.cookie_httponly', 'On');
 
if (isset($_COOKIE[session_name()]) && !preg_match('/^[a-zA-Z0-9,\-]+$/', $_COOKIE[session_name()])) {
exit('Error: Invalid session ID!');



}
 

session_set_cookie_params(0, '/');

session_set_cookie_params(ini_get('session.cookie_lifetime'), '/');

session_start();

}

б)

  Скрыть контент
public function start($key = 'default', $value = '') {
if ($value) {
$this->session_id = $value;
} elseif (isset($_COOKIE[$key])) {
$this->session_id = $_COOKIE[$key];
} else {
$this->session_id = $this->createId();
}
 
if (!isset($_SESSION[$this->session_id])) {
$_SESSION[$this->session_id] = array();
}
 
$this->data = &$_SESSION[$this->session_id];
 
if ($key != 'PHPSESSID') {

setcookie($key, $this->session_id, ini_get('session.cookie_lifetime'), ini_get('session.cookie_path'), ini_get('session.cookie_domain'), ini_get('session.cookie_secure'), ini_get('session.cookie_httponly'));

setcookie($key, $this->session_id, time() + ini_get('session.cookie_lifetime'), ini_get('session.cookie_path'), ini_get('session.cookie_domain'), ini_get('session.cookie_secure'), ini_get('session.cookie_httponly'));

 

 
}
 
return $this->session_id;
}

 

такого нету в этом файле

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


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

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

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

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

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

Вхід

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

Вхід зараз
×
×
  • Створити...

Important Information

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