嗨我有以下问题。对组件的标准操作在Joomla中称为index.php?option=com_name&action=MYACTION
。然后我可以在我的组件中使用Joomla框架,例如用于数据库访问。
我正在为3dsecure网关开发组件。在支付的一个步骤中,我需要验证从银行发送的数据。所以我需要这样的index.php?option=com_name&action=validate
。但是银行在此URL之后添加了另外?
个更多参数,所以我认为它无法正常工作。所以我想从3dsecure.mysite.com/validate.php
访问我的Joomla组件?是否可能?< / p>
我只想使用JFactory::getDB
然后重定向到任何视图。我知道我可以使用mysql_connect并创建自己的DB连接,但它非常难看:)
我可以以某种方式重定向我的请求(使用从银行发送的参数创建有效的网址)吗?header(Location:)
??
感谢您的帮助
答案 0 :(得分:0)
你不能在框架之外使用Joomla!的apis,除非你在那里提供需要依赖(因此在其他地方重新创建框架),这是非常废话。
此外,您可以在组件URL中拥有许多参数,由组件路由器知道如何处理...因此,在组件的路由器类中,您将放置处理程序对于你需要的每个$ _GET参数,就像那些从银行返回的参数。
如果你只是不想弄脏mysql_ *的东西,请使用PDO(顺便说一句,顺便说一下,这是一种更好的方法)。
答案 1 :(得分:0)
考虑在服务器上使用重写规则。
例如,重写
3dsecure.mysite.com/validate.php(...)
到
?的index.php选项= com_name&安培;行动= MYACTION(...)
如果您使用的是Apache,可以使用mod_rewrite来实现此目的。