Проблема с компонентом Joomla - доступ к Joomla Framework из контекста index.php
Привет у меня есть следующая проблема Стандартные действия над компонентами в Joomla называются так index.php?option=com_name&action=MYACTION
, Затем я могу использовать каркас Joomla в моем компоненте, например, для доступа к базе данных. Я разрабатываю компонент для 3dsecure шлюза. На одном этапе оплаты мне нужно проверить данные, отправленные из банка. Так что мне нужно что-то вроде этого index.php?option=com_name&action=validate
, Но банк добавляет после этого URL еще один ?
и больше параметров, так что я думаю, что это не может работать.. Так что я хочу получить доступ к моему компоненту Joomla, например, из 3dsecure.mysite.com/validate.php
? Является ли это возможным?
Я просто хочу использовать JFactory::getDB
а затем, например, перенаправить на любой вид. Я знаю, что могу использовать mysql_connect и создать собственное соединение с БД, но это очень некрасиво:)
Можно ли как-то перенаправить запрос на мою сторону (создать действительный URL с параметрами, отправленными из банка)?header(Location:)
??
Спасибо за помощь
2 ответа
Вы не можете использовать API-интерфейс Joomla! Вне фреймворка, если вы не предоставите там все необходимые зависимости (таким образом, воссоздавая фреймворк в другом месте), что является довольно бессмысленным.
Более того, вы можете иметь много параметров в URL-адресе компонента, и маршрутизатор компонента должен знать, что с этим делать... Итак, в вашем классе маршрутизатора компонента вы будете размещать обработчики для каждого $_Получите параматер, который вам нужен, как те, которые вернули из банка.
Если вы просто не хотите испачкаться вещами mysql_*, используйте PDO (кстати, это лучший подход в целом).
Подумайте об использовании правила перезаписи на сервере.
Например, переписать
3dsecure.mysite.com/validate.php(...)
в
index.php? вариант =com_name& действие = MyAction (...)
Если вы используете Apache, вы можете использовать mod_rewrite для этой цели.