无需密码登录Joomla 3


Log into Joomla 3 without a Password

有人知道这是如何实现的吗?

我认为这可能会扰乱会话,除非已经有一个内置的函数可以用来做这件事。

如果您需要更多的信息,请告诉我,我很乐意提供。

谢谢!

下面的代码片段应该根据数据库中的用户id加载用户,然后为发出请求的访问者登录用户。它不需要他们的密码。话虽如此,我确实希望你能以某种方式证明这一点。(我只在网站的前端测试过。)

$db = JFactory::getDbo();
$q = "SELECT * FROM `#__users` WHERE id = ".$id;
$user = $db->setQuery($q)->loadAssoc();
JPluginHelper::importPlugin( 'user' );
$dispatcher = JDispatcher::getInstance();
// Initiate log in
$options = array('action' => 'core.login.site', 'remember' => false);
$results = $dispatcher->trigger('onUserLogin', array($user, $options));