Ребята, всем привет! Прошу помощи бывалых. Подключил свой php файл-скрипт к джумле. в нем хочу доставать id авторизированного на сайте пользователя и делать разные манипуляции. включил session_start(); потом распечатал print_r ($_SESSION); и он выдал: Код (CODE): 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): print_r ($_SESSION); include "../libraries/joomla/factory.php"; $session = JFactory::getSession(); $var = $session->get('id'); echo $var; Тут элементарщина -согласен, просто не хватает знаний по работе джумлы. Первый день с ней Прошу помощи. Спасибо
Здравствуйте. Каким образом подключаете? В виде модуля? Если нет - сначала поместите Ваш код внутри модуля, установите его в Joomla, а затем вставьте его в нужное место с помощью конструкции loadmodule. "Болванку" модуля можете скачать из вложения. Для того, чтобы работать с данными авторизованного пользователя в Joomla есть метод getUser класса JFactory. Читаем документацию по ссылке выше, там же смотрим примеры. Код (PHP): <?php $user = JFactory::getUser(); ?> ID текущего пользователя: <?php echo $user->id; ?>
Значит что-то неправильно делаете. Скачиваете модуль из вложения выше. Открываете его в редакторе и вставляете свой код. Сохраняете, пакуете обратно в архив. Устанавливаете в Joomla. Расширения -> Менеджер плагинов -> Контент - Загрузка модулей: Опубликовать. Расширения -> Менеджер модулей -> Создать -> {название-модуля} Вместо позиции модуля вписываем произвольное название на латинице (например, phraza). Выбираем отображение на всех страницах сайта. Заходим в материал (или описание категории или куда нужно...) и пишем в тексте {loadposition phraza} Вуаля. Должно работать.