Сессия из Джумлы

Тема в разделе "Создание расширений для Joomla", создана пользователем Juke, 06.01.2014.

  1. Offline

    Juke Недавно здесь

    Регистрация:
    06.01.2014
    Сообщения:
    4
    Симпатии:
    0
    Пол:
    Мужской
    Ребята, всем привет!
    Прошу помощи бывалых.

    Подключил свой php файл-скрипт к джумле. в нем хочу доставать id авторизированного на сайте пользователя и делать разные манипуляции.


    включил session_start();

    потом распечатал print_r ($_SESSION);
    и он выдал:


    Код (CODE):
    1. Array ( [__default] => Array ( [session.counter] => 6 [session.timer.start] => 1389014575 [session.timer.last] => 1389014623 [session.timer.now] => 1389014652 [session.client.browser] => Mozilla/5.0 (Windows NT 6.3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/31.0.1650.63 Safari/537.36 [registry] => __PHP_Incomplete_Class Object ( [__PHP_Incomplete_Class_Name] => JRegistry [datarotected] => stdClass Object ( [users] => stdClass Object ( [login] => stdClass Object ( [form] => stdClass Object ( [data] => Array ( ) ) ) ) ) ) [user] => __PHP_Incomplete_Class Object ( [__PHP_Incomplete_Class_Name] => JUser [isRootrotected] => [id] => 49 [name] => Роман [username] => Juke => jukefromdonetsk@list.ru [password] => 6dbe6d2c9ce5d104ca2af6e2d284fac1:gon8Hu56w6TAeOby4ciFgRscgtD KWY2N [password_clear] => [usertype] => [block] => 0 [sendEmail] => 0 [registerDate] => 2013-12-29 11:34:36 [lastvisitDate] => 2014-01-06 12:48:51 [activation] => [params] => {"admin_style":"","admin_language":"","language":"","editor" :"","helpsite":"","timezone":""} [groups] => Array ( [Registered] => 2 [Консультанты] => 11 ) [guest] => 0 [_paramsrotected] => __PHP_Incomplete_Class Object ( [__PHP_Incomplete_Class_Name] => JRegistry [datarotected] => stdClass Object ( [admin_style] => [admin_language] => [language] => [editor] => [helpsite] => [timezone] => ) ) [_authGroupsrotected] => Array ( [0] => 1 [1] => 2 [3] => 11 ) [_authLevelsrotected] => Array ( [0] => 1 [1] => 1 [2] => 2 [3] => 7 [4] => 8 ) [_authActionsrotected] => [_errorMsgrotected] => [_errorsrotected] => Array ( ) [aid] => 0 ) [session.token] => 35e1c66dfba05aa00acb9cb6491ed9e8 ) )


    пробывал всякие манипуляции целый день, чтобы достать [id] => 49 [name] => Роман [username] => Juke и все никак...
    может какието библиотеки не включены или еще что.


    писало , что Class 'JFactory' not found in - включаю его и все равно из этого сессионного массива ничего не достается.
    сейчас код такой


    Код (PHP):
    1. print_r ($_SESSION);
    2. include "../libraries/joomla/factory.php";
    3. $session = JFactory::getSession();
    4.  
    5. $var = $session->get('id');
    6. echo $var;



    Тут элементарщина -согласен, просто не хватает знаний по работе джумлы. Первый день с ней

    Прошу помощи. Спасибо
     
    Последнее редактирование модератором: 24.11.2014
  2.  
  3. shurikkan
    Offline

    shurikkan Russian Joomla! Team Команда форума

    Регистрация:
    01.09.2011
    Сообщения:
    1 856
    Симпатии:
    162
    Пол:
    Мужской
    Здравствуйте.
    Каким образом подключаете? В виде модуля?
    Если нет - сначала поместите Ваш код внутри модуля, установите его в Joomla, а затем вставьте его в нужное место с помощью конструкции loadmodule.
    "Болванку" модуля можете скачать из вложения.

    Для того, чтобы работать с данными авторизованного пользователя в Joomla есть метод getUser класса JFactory.
    Читаем документацию по ссылке выше, там же смотрим примеры.
    Код (PHP):
    1. <?php
    2. $user = JFactory::getUser();
    3. ?>
    4. ID текущего пользователя: <?php echo $user->id; ?>
     
    Последнее редактирование: 06.01.2014
  4. Offline

    Juke Недавно здесь

    Регистрация:
    06.01.2014
    Сообщения:
    4
    Симпатии:
    0
    Пол:
    Мужской
    Ну просто в админке добавил и все. :( Пока Ваш вариант не получился - ничего не выводися
     
  5. shurikkan
    Offline

    shurikkan Russian Joomla! Team Команда форума

    Регистрация:
    01.09.2011
    Сообщения:
    1 856
    Симпатии:
    162
    Пол:
    Мужской
    Значит что-то неправильно делаете.

    1. Скачиваете модуль из вложения выше.
    2. Открываете его в редакторе и вставляете свой код.
    3. Сохраняете, пакуете обратно в архив.
    4. Устанавливаете в Joomla.
    5. Расширения -> Менеджер плагинов -> Контент - Загрузка модулей: Опубликовать.
    6. Расширения -> Менеджер модулей -> Создать -> {название-модуля}
    7. Вместо позиции модуля вписываем произвольное название на латинице (например, phraza). Выбираем отображение на всех страницах сайта.
    8. Заходим в материал (или описание категории или куда нужно...) и пишем в тексте {loadposition phraza}

    Вуаля.
    Должно работать.
     
  6. Offline

    Juke Недавно здесь

    Регистрация:
    06.01.2014
    Сообщения:
    4
    Симпатии:
    0
    Пол:
    Мужской
    Я прошу прошения, но я никак не пойму, что нужно скачать :(
     
  7. shurikkan
    Offline

    shurikkan Russian Joomla! Team Команда форума

    Регистрация:
    01.09.2011
    Сообщения:
    1 856
    Симпатии:
    162
    Пол:
    Мужской
    Архив из вложения (забыл добавить).
     

    Вложения:

    • clearModule.zip
      Размер файла:
      727 байт
      Просмотров:
      1
  8. Offline

    Juke Недавно здесь

    Регистрация:
    06.01.2014
    Сообщения:
    4
    Симпатии:
    0
    Пол:
    Мужской
    Спасибо! сейчас буду разбираться
     

Поделиться этой страницей

Загрузка...