Сессии в MODx Revolution


Извиняюсь что вопрос не по вашим модулям, но вы точно должны знать. Как же в своих сниппетах использовать сессии? Я так понял в MODx немного другой принцип их использования, но я никак не могу найти на просторах интернета ответ.
Спасибо.
23 сентября 2012, 23:00    Сергей Росоловский   G+  
0    2813 0

Комментарии (7)

  1. Василий Наумкин 24 сентября 2012, 06:52 # 0
    Как и везде — $_SESSION

    Revolution хранит по умолчанию сессии в БД — вот отличие. Но на работу это никак не влияет.
    А еще можно сессии отключать — параметр session_enabled для контекста.
    1. Сергей Росоловский 24 сентября 2012, 10:09 # 0
      Ну вроде не как везде.
      Все таки раскопал в нете что надо сделать чтобы сессии работали и они у меня заработали!
      Вот что надо прописать, и тогда уже можно в своих сниппетах использовать конструкцию $_SESSION['your_session_variable'].

      define('MODX_CORE_PATH', '/full/path/to/modxcore/' );
      define('MODX_CONFIG_KEY', 'config');
      require_once ( MODX_CORE_PATH.'config/'.MODX_CONFIG_KEY.'.inc.php' );
      require_once ( MODX_CORE_PATH.'model/modx/modx.class.php' );
      $modx = new modx();
      $modx->initialize('web');
      1. Василий Наумкин 24 сентября 2012, 10:15 # 0
        Это подключение MODX_API из своих внешних php скриптов. Надеюсь, долго копать не пришлось, ибо — bezumkin.ru/blog/2012/06/26/modx_api/

        Сниппеты — они внутри MODX, когда он уже запущен. Советую немного разобраться с терминологией.
        1. Сергей Росоловский 24 сентября 2012, 10:35 # 0
          Не хочу флудить, только начинаю разбираться с внутренностями MODx, но без указания этих конструкций я не мог оперировать с переменными $_SESSION они просто не изменялись, а после добавления этого кода все заработало как надо.
          1. Василий Наумкин 24 сентября 2012, 10:41 # 0
            Тогда у вас однозначно что-то не в порядке с хостингом.

            Попробуйте поработать на modx-test.com.
            1. Сергей Росоловский 24 сентября 2012, 10:56 # 0
              Я работал на локальном сервере, сборка OpenServer. Конечно попробую и на хостинге может и есть ньюансы, кстати miniShop не хотел корректно работать на сборке Wamp Server и пришлость сменить ее на OpenServer.
      2. Андрей 16 апреля 2015, 10:43 # 0
        в снипете надо указывать с "!" перед его именем — у меня это помогло
        но всё равно столкнулся с проблемой сессий. так и не решил.
        саму тему проблему описывал тут:
        ссылка

        то есть в стороннем скрипте присвоение сессии происходит, а в снипете значение не видится. указанный мной выше выход не подходит, так снипет я использую как параметр в FormIT?

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