2015-01-27 2 views
0

Я создаю модуль в WHMCS, и мне нужен идентификатор Token для отправки запроса на WHMCS внутри страницы. Но я попробовал сессию, но это не лексема:Поиск Token un WHMCS

$_SESSION['tkval']; 

Любая идея, как получить текущий маркер WHMCS в модуле для использования внутри системы?

ответ

2

Если вы читаете из PHP-файла (например, аддон или крючок):

$smartyObj = $GLOBALS['smarty']; 
$formToken = $smartyObj->get_template_vars('token'); 
+0

Нет, я получаю эту ошибку 'Фатальная ошибка: Вызов функции-члена get_template_vars()' – jfreak53

+0

, в которых функционируют модуль, в котором вы пытаетесь получить токен? – wesamly

+0

Мой модуль имеет только одну функцию '_output'. Вот где я это называю. – jfreak53

0

Какой модуль вы делаете? Если на странице уже есть форма с токеном, то захват будет лучшим выбором (через объект smarty, если вы можете получить к нему доступ или через JS, проверяющий скрытое поле формы.) Однако это модуль аддона или какой-то другой страницы, на которых контент, который вы просматриваете, не содержит токена CRSF, тогда вы не можете его очистить и повторно использовать.

Вместо отправки в CRSF, проверенного в большинстве случаев, я бы рассмотрел использование API или моделей данных для внесения изменений. Документы для API:

http://docs.whmcs.com/API

и для моделей открытых данных:

http://docs.whmcs.com/classes/namespaces/WHMCS.html

Если вы должны иметь CRSF маркер и страница не предлагает один, то вы своего рода застрял , Я рекомендовал бы сделать запрос функции для команды API, чтобы дать вам маркер CRSF:

https://requests.whmcs.com/

Смежные вопросы