0 Пользователей и 1 Гость просматривают эту тему.
  • 12 Ответов
  • 462 Просмотров
*

ost007

  • Осваиваюсь на форуме
  • 41
  • 1 / 0
Можно ли в Joomla 3 получить id-пользователя во внешнем скрипте. Я хотел бы вызвать PHP-скрипт через AJAX.
Вижу, что люди уже пытались, например как здесь:
https://stackoverflow.com/questions/37089402/get-current-user-session-from-external-script-in-joomla-3-5

Но это для для версии Joomla 1.5, здесь (на этом форуме) тоже самое:
Имя текущего пользователя
Как получить имя пользователя?

Есть ли решение этого вопроса для Joomla 3 ? Я, честно говоря, не нашел.
« Последнее редактирование: 21.02.2020, 10:30:22 от ost007 »
*

sivers

  • Завсегдатай
  • 1541
  • 213 / 0
Я, честно говоря, не нашел.
А вы пробовали? Проверили и не получилось? Почему в тройке не должно работать то, что еще в 1-й работало?
Код
$id = JFactory::getUser()->id;
На связи в телеге @sivers
*

ost007

  • Осваиваюсь на форуме
  • 41
  • 1 / 0
Во внешнем скрипте это не работает  :(
*

sivers

  • Завсегдатай
  • 1541
  • 213 / 0
Во внешнем скрипте это не работает  :(
Сработает, если подключите в нем апи Joomla. Если внешний скрипт лежит в корне сайта, то в самом начале надо прописать вот это:
Код
<?php
define('_JEXEC', 1);
if (file_exists(__DIR__ . '/defines.php'))
{
include_once __DIR__ . '/defines.php';
}
if (!defined('_JDEFINES'))
{
define('JPATH_BASE', __DIR__);
require_once JPATH_BASE . '/includes/defines.php';
}
require_once JPATH_BASE . '/includes/framework.php';
$app = JFactory::getApplication('site');
если ж не в корне, то правильно указать пути к подключаемым файлам. Этот код - фрагмент из индекса Joomla, который в корне сайта, так что запомнить как подключать - не сложно. Следом за этим кодом в скрипте будут работать все классы Joomla.
На связи в телеге @sivers
*

ost007

  • Осваиваюсь на форуме
  • 41
  • 1 / 0
Спасибо огромное! Смоделировал ситуацию: на первый раз в корне разместил оба файла: HTML (со скриптом alax) и PHP-скрипт. В PHP-скрипте разместил Ваш код (+ $id = JFactory::getUser()->id; echo $id), чтобы возвращал id. Получилось!
Вы пишете:
Цитировать
если ж не в корне, то правильно указать пути к подключаемым файлам
Речь идет об этом: require_once JPATH_BASE . '/includes/defines.php'; ?
Здесь надо писать относительный путь от скрипта? Попробовал, пока не получилось. У меня скрипт в папке "abc".
*

draff

  • Гуру
  • 5072
  • 353 / 7
  • ищу работу
define('JPATH_BASE', __DIR__);
Здесь надо писать относительный путь от скрипта? Попробовал, пока не получилось.
Код
 define('JPATH_BASE', dirname(__DIR__));
*

Гоша_Компьютерный

  • Осваиваюсь на форуме
  • 48
  • 10 / 0
  • sitogon
Я бы лучше сделал бы небольшой системный плагин и обращался бы по AJAX к нему. Впрочем, ничего не мешает обращаться и к компоненту. Сразу к контроллеру
*

sivers

  • Завсегдатай
  • 1541
  • 213 / 0
У меня скрипт в папке "abc".
Путь указывается от корня файловой системы до корня сайта. В вашем случае это:
Код
define('JPATH_BASE', __DIR__);
поменять на
Код
define('JPATH_BASE', realpath(__DIR__.'/..'));
На связи в телеге @sivers
*

sivers

  • Завсегдатай
  • 1541
  • 213 / 0
define('JPATH_BASE', __DIR__);
define('JPATH_BASE', dirname(__DIR__));
Разве эти две записи не эквивалентны?
На связи в телеге @sivers
*

robert

  • Живу я здесь
  • 4963
  • 457 / 20
Разве эти две записи не эквивалентны?
Нет, конечно.
Не будь паразитом, сделай что-нибудь самостоятельно!
*

sivers

  • Завсегдатай
  • 1541
  • 213 / 0
Нет, конечно.
да, понял. перепутал с dirname(__FILE__)
На связи в телеге @sivers
*

ost007

  • Осваиваюсь на форуме
  • 41
  • 1 / 0
Большое спасибо за помощь! С праздником! Всё отлично работает!
« Последнее редактирование: 22.02.2020, 10:05:03 от ost007 »
*

pavelrer

  • Давно я тут
  • 601
  • 10 / 2
Большое спасибо за помощь! С праздником! Всё отлично работает!
Всем добра!
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Как в этом скрипте заменить color на font-style: italic?

Автор kiev

Ответов: 5
Просмотров: 92
Последний ответ 04.12.2020, 01:18:30
от gartes
Как получить доступ к админке?

Автор Светлана Р.

Ответов: 15
Просмотров: 288
Последний ответ 06.11.2020, 17:21:44
от Светлана Р.
Ручная активация регистрации пользователя.

Автор Briz1

Ответов: 6
Просмотров: 1242
Последний ответ 05.11.2020, 20:22:10
от Grigoriy82
Как выслать повторно письмо с активацией пользователя?

Автор baf28

Ответов: 6
Просмотров: 1063
Последний ответ 05.11.2020, 20:15:38
от Grigoriy82
Как получить информацию о продукте внутри VirtueMart?

Автор Damarkuzz

Ответов: 1
Просмотров: 78
Последний ответ 03.11.2020, 23:11:19
от Damarkuzz