Приложение
Как установить приложение на iOS

Смотрите видео ниже, чтобы узнать, как установить iTnull.info в качестве веб-приложения.

Примечание: Эта функция может быть недоступна в некоторых браузерах.

Инструкция FIX Сохранение session после закрытия браузера Opencart3

  • Друг форума
  • Программист
  • Автор темы
  • Администратор
  • Модератор
  • Команда форума
  • #1 из 1
В стандартном OpenCart 3 при закрытии браузера сбрасывается session и за этого удаляются товары с корзины, сбрасывается авторизация (в админке тоже), это fix вам поможет.
И так, приступим)
ВНИМАНИЕ! Перед редактированием или замене файлов сделайте бэкап!
Открываем /system/framework.php
Находим:
Код:
Расширить Свернуть Скопировать
setcookie($config->get('session_name'), $session->getId(), (ini_get('session.cookie_lifetime') ? (time() + ini_get('session.cookie_lifetime')) : 0), ini_get('session.cookie_path'), ini_get('session.cookie_domain'));
И переносим строку за скобки
Код:
Расширить Свернуть Скопировать
if ($config->get('session_autostart')) { code }

Должно получится так:
Код:
Расширить Свернуть Скопировать
if ($config->get('session_autostart')) {

    if (isset($_COOKIE[$config->get('session_name')])) {
        $session_id = $_COOKIE[$config->get('session_name')];
    } else {
        $session_id = '';
    }

    $session->start($session_id);
 
}
    setcookie($config->get('session_name'), $session->getId(), ini_get('session.cookie_lifetime'), ini_get('session.cookie_path'), ini_get('session.cookie_domain'));

Далее идем в /system/library/session.php
Находим:

Код:
Расширить Свернуть Скопировать
} else {
            trigger_error('Error: Could not load cache adaptor ' . $adaptor . ' session!');
            exit();
 }

После вставляем:
Код:
Расширить Свернуть Скопировать
if ($this->adaptor && !session_id()) {
         session_set_cookie_params(time()+31536000, '/');
         session_start(); 
}

И последний файл: /system/library/session/db.php
Находим:

Код:
Расширить Свернуть Скопировать
$this->db = $registry->get('db');
После вставляем:
Код:
Расширить Свернуть Скопировать
if(!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');
        ini_set('session.gc_maxlifetime', 31536000);
}
 

Создайте аккаунт или войдите, чтобы комментировать

Вы должны быть участником, чтобы оставлять комментарии

Зарегистрироваться

Создайте учетную запись. Это просто!

Авторизация

Уже есть аккаунт? Авторизуйтесь.

    Nobody is reading this thread right now.

Похожие темы

Драйвер кеширования Redis для Opencart/Ocstore 1.5.x — 3.x Redis — это высокопроизводительное...
Ответы
0
Просмотры
2K
Мы уже рассматривали, как создать бота, который отправляет сообщения с сайта в мессенджер...
Ответы
3
Просмотры
4K
Назад
Сверху Снизу