Привет сообществу героев!
Я тут на своем сайте начал делать такой себе "костыль", а именно: пишу свои скрипты и вызываю их через "ушки" на страницы блога. Почти все работает
Сейчас понадобилась сессия, посмотрел коды ЦМС-ки, но не понял - могу ли я использовать сессию оттуда?
Прошу помочь - если возможно получение доступа к сессии - как это выполнить?
Под "доступом" я понимаю - записать свои значения в сессию (с моими именами) и прочитать их в нужном месте.
9 3143
Еще записи по теме
- Как выводить короткое описание записей на главной в шаблоне Max-Zmey?
- Возможно ли в статьях использовать IFRAME?
- Какой дешевый хостинг для MaxSite CMS порекомендуете?
- Как сделать разный дизайн на страницах Maxsite?
- Улучшение "Популярных статей"
- Как организовать вывод случайных записей на главной в MaxSite?
- Как добавить хештег в плагин аддзакладки?
Владимир, не понял что вы имеете в виду под словами «использовать сессию»? В кукисах - это один тип «сессии». А есть ещё getinfo('session'); (точнее $MSO->data['session']; ).
Если вам нужны были «данные сессии», тогда достаточно сделать в вашем скрипте вызов:
А потом обращаться к ключам. Чтобы посмотреть все доступные ключи сделайте
Если нужно хранить в сессии свои переменные, то просто посмотрите какие есть в $MSO и задавайте свои так, чтобы не повредить системные.
Спасибо за ответ!
пока ответа не было, начал использовать $_SESSION...
Это не противоречит? Или все же лучше $MSO?
Владимир, я не знаю целиком вашей задачи, поэтому и не могу дать исчерпывающий ответ. Подозреваю, что вам просто нужно передавать какие-то значения между разными вызовами ушки. Если задача в этом, то, в принципе, можно использовать любую глобальную php-переменную. Можно использовать и $_SESSION, но очень не желательно, т.к. она системная. Лучше уж тогда на свой страх и риск использовать $MSO, которая принадлежит уровню приложения (движку, а не php интерпретатору).
Да, верно - задача - передавать значения.
Понял.
Странно, везде в учебниках в примерах именно $_SESSION... я думал, что она для того и предназначена... Но это другая тема. Перепишу на $MSO.
Спасибо!
Илья, немного выше Вы написали "Чтобы посмотреть все доступные ключи сделайте"
"Очевидно Вы имели в виду - занятые ключи?
Владимир, что касается моего высказывания по поводу $_SESSION, то оно вызвано неясностью стоящей перед вами задачей. Если у вас стоит задача сохранять и передавать некие значения между ушками в рамках обработки одного запроса, то моё высказывание верно, т.к. использование $_SESSION - избыточно. Если вам нужно передавать некие значения между обработкой разных запросов (при переходе посетителя со страницы на страницу), то конечно использовать $_SESSION - это самый приемлемый вариант.
Про «доступные ключи», да, конечно же в контексте вашей задачи более уместно использовать слово «занятые ключи».
Илья, спасибо за ответ!
Общение - необходимая вещь - постепенно все разъясняется!
Да, мне нужно при переходах по страницам.
А вот это: "сохранять и передавать некие значения между ушками в рамках обработки одного запроса", если не трудно, пожалуйста разъясните немного подробнее: как это вообще возможно передать значения при обработке одного запроса? Как-то вообще себе этого не представляю.
«Один запрос» - это обращение посетителя к сайту открыть определённую страницу. Запрос поступает веб-серверу, а он для обработки запускает движок сайта. Движок, в свою очередь, подгружает разные php-файлы со своими процедурами и функциями - в результате получается, что выполняется как бы одна большая программа. Теперь нужно вспомнить понятие «область видимости переменной». Каждый раз, когда выполняется ваша ушка, по сути происходит вызов функции, у которой своя область видимости. Чтобы сохранить или передать какое-то значение из этой функции «наружу» нужно обратиться к глобальной переменной. Надеюсь, что смог ответить на ваш вопрос, Владимир.
Да, смогли!
Большое спасибо!
Я понял это так: если я использую на странице больше чем одну ушку, то данные, которые нужны в разных фрагментах кода, можно легко передать от кода (ушка), запускаемого ранее, в последующий код - именно посредством $MSO.