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

progroman

Користувачі
  
  • Публікації

    1 396
  • З нами

  • Відвідування

Повідомлення, опубліковані користувачем progroman

  1. Можно сделать 2 подключения: одно для сессий, другое для остальных запросов.

    system\library\session\db.php

    вместо получения текущего подключения

            $this->db = $registry->get('db');

    нужно создать новое с параметрами подключения к основной БД

            $this->db = new DB(...);

     

    Думаю, так должно сработать

  2. Если в режиме инкогнито тоже не работает, то, скорее всего, сессии хранятся в базе. Т.е. идентификатор сессии на поддомене такой же, а данные по нему грузятся из другой таблицы. Нужно настроить, чтобы сессии брались из одной БД для всех поддоменов

  3. 10 часов назад, infojac сказал:

    Версия 8.3, при использовании переменной %ZONE_PC% слово "край" не просклонировано

    image.png.6e41875f5f7b053bbf529f7d157ba30d.png

    Пока так, в следующих версиях исправлю

     

    10 часов назад, infojac сказал:

    С Санкт-Петербургом вместо региона используется "г. Санкт-Петербург"

    Это и есть регион

  4. @vvo В Симпле поменялся шаблон, поэтому получилось задвоение, в следующей версии исправлю.

    Сейчас можно поменять и перезалить xml-файл

    Вместо

        <!-- Замена поля ввода в Simple -->
        <file path="catalog/view/theme/*/template/common/simple_row_field.tpl" error="skip">
            <operation error="skip">
                <search><![CDATA[type="<?php echo $type ?>"]]></search>
                <add position="before"><![CDATA[        <?php if ($id == 'shipping_address_city' && $value && $progroman_citymanager->setting('replace_input_city')) { ?>
              <p class="form-control-static">
                <a class="prmn-cmngr-simplecity" onclick="Prmn.citymanager.showCitiesPopup();"><?= $value ?></a>
              </p>
            <?php } else { ?>]]></add>
            </operation>
            <operation error="skip">
                <search><![CDATA[type="<?php echo $type ?>"]]></search>
                <add position="after"><![CDATA[        <?php } ?>]]></add>
            </operation>
        </file>

     

     так

        <!-- Замена поля ввода в Simple -->
        <file path="catalog/view/theme/*/template/common/simple_row_field.tpl" error="skip">
            <operation error="skip">
                <search index="0"><![CDATA[type="<?php echo $type ?>"]]></search>
                <add position="before"><![CDATA[        <?php if ($id == 'shipping_address_city' && $value && $progroman_citymanager->setting('replace_input_city')) { ?>
              <p class="form-control-static">
                <a class="prmn-cmngr-simplecity" onclick="Prmn.citymanager.showCitiesPopup();"><?= $value ?></a>
              </p>
            <?php } else { ?>]]></add>
            </operation>
            <operation error="skip">
                <search index="0"><![CDATA[type="<?php echo $type ?>"]]></search>
                <add position="after"><![CDATA[        <?php } ?>]]></add>
            </operation>
        </file>

     

    т.е. добавить index="0" в 2х местах

    • +1 1
  5. В качестве предположения. Слишком много данных и при записи в БД они обрезаются, т.к. тип text вмещает 65 535 символов. Данные хранятся в формате json, в нем если есть { должна быть и }

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

     

    Почему ломается при включении CityManager, я не знаю, возможно, он добавляет свои данные и длина всей сессии превышает 65 535.

     

    Чтобы проверить, попробуйте поменять тип поля data на MEDIUMTEXT в таблице session. Но лучше все же разобраться, откуда там такой объем.

  6. 22 часа назад, gandhari сказал:

    Это она ещё обрезалась из-за ограничений форума. 4 млн. символов остались за бортом:-D

    Попробуйте это вставить в какой-нибудь json форматтер, например https://jsonformatter.org/json-pretty-print

    Так будет проще найти, что пишет много данных. Я не думаю, что все они нужны в сессии.

     

  7. 22 часа назад, gandhari сказал:

    Вы прикалываетесь? На сайт заходит ~400 юзеров в сутки. А сессий в сутки 4000+

    Нет, я же был не в курсе вашей посещаемости

     

    22 часа назад, gandhari сказал:

    Но что скажете о таких вот сессиях:

    Скажу, что данные CityManager

    Цитата

    "prmn.city_manager":{"country_id":"176","country_name":"\\u0420\\u043e\\u0441\\u0441\\u0438\\u044f","country_name_gc":"\\u0420\\u043e\\u0441\\u0441\\u0438\\u0438","country_name_pc":"\\u0420\\u043e\\u0441\\u0441\\u0438\\u0438","zone_id":"2761","zone_name":"\\u041c\\u043e\\u0441\\u043a\\u0432\\u0430","zone_name_gc":"\\u041c\\u043e\\u0441\\u043a\\u0432\\u044b","zone_name_pc":"\\u041c\\u043e\\u0441\\u043a\\u0432\\u0435","prefix_zone_name":"\\u0433.","district_name":null,"district_name_gc":null,"district_name_pc":null,"prefix_district_name":null,"city_name":"\\u041c\\u043e\\u0441\\u043a\\u0432\\u0430","city_name_gc":"\\u041c\\u043e\\u0441\\u043a\\u0432\\u044b","city_name_pc":"\\u041c\\u043e\\u0441\\u043a\\u0432\\u0435","prefix_city_name":"\\u0433.","fias_country_id":"1","fias_zone_id":"41","fias_district_id":null,"fias_id":"41","postcode":null,"short_city_name":"\\u041c\\u043e\\u0441\\u043a\\u0432\\u0430"},"prmn.city_manager.fias_id":"41"

    Остальное другие модули пишут. Разберитесь, что и зачем хранит столько данных в сессиях. Возможно, с этим связана ошибка.

  8. Если кэшируется целиком страница. Например, зашел кто-то из Саратова на страницу site.ru/tovar1, и страница сохранилась с ним. Заходит другой пользователь из Уфы на эту же страницу, а ему показывается Саратов, т.к. из кэша. Поэтому в этом случае нужно включать загрузку модуля по ajax в настройках, а в кэшере добавлять в исключения "progroman/citymanager".

    В CityManager Pro при наличии поддоменов или подкаталогов для городов этого можно не делать, т.к. каждому городу будут соответствовать свои URL и кэши будут разные

    saratov.site.ru/tovar1

    ufa.site.ru/tovar1

     

    В общем, особых проблем с кэшем нет, ну или мне о них не известно

×
×
  • Створити...

Important Information

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