我需要自定义组件中的方法。我需要做出不同的操作(删除用户和其他信息),然后以编程方式注销用户(不带按钮链接),我该如何实现这一目标?用joomla以编程方式注销
我试过在方法结束做到这一点:
$return = JRoute::_('index.php?option=com_users&task=user.logout', true);
$this->setRedirect($return,$msg);
但是,这给出了一个无效的令牌消息。
谢谢
我需要自定义组件中的方法。我需要做出不同的操作(删除用户和其他信息),然后以编程方式注销用户(不带按钮链接),我该如何实现这一目标?用joomla以编程方式注销
我试过在方法结束做到这一点:
$return = JRoute::_('index.php?option=com_users&task=user.logout', true);
$this->setRedirect($return,$msg);
但是,这给出了一个无效的令牌消息。
谢谢
什么Joomla版本你工作?如果是的Joomla 1.7,你可以在你的代码做到这一点:
$app = JFactory::getApplication();
$app->logout($user_id);
其中$ user_id是要注销该用户的ID。如果您将其保留为空或不设置,则会注销正在执行请求的用户。 为Joomla 1.5,你可以用同样的方式,但在的Joomla 1.5有一个全局变量名为$主机保存应用程序的一个实例,所以你可以做:
global $mainframe;
$mainframe->logout($user_id);
我希望它帮助!
完美,这是我正在寻找的解决方案,谢谢 – user1075778
不赞成使用4.0 ... –
$app = JFactory::getApplication();
$app->logout();
如果是Joomla 2.5您可以使用Joomla的默认登录模块(它也有一个注销按钮)。转到扩展>>模块管理器>>新建>>登录>>正确配置并保存。
不能看到用户通过编程方式询问'不是通过按钮单击? –
当然“不是通过按钮点击”,我指的配置页面提供了一种如何配置此事件的方式(因为用户希望注销删除用户)。 –
根据https://api.joomla.org/cms-3/classes/JApplication.html#method_logout,注销函数从4.0开始已被弃用。它仍然可用吗?如果没有,是否有人有替代解决方案? –