1

我想更改 Joomla 密码提醒机制的默认行为。我希望能够检查密码的强度和(可选)验证码功能。我想知道是否有一个免费的 Joomla 组件,我可以安装和使用开箱即用。

4

1 回答 1

1

如果您不介意修改核心代码,那么您可以查看该components\com_user\controller.php文件。在save()函数中,大约在第 82 行,它检索用户的密码。此时,您可以插入任何您喜欢的代码来检查密码强度:

$passOK = true;
if($post['password'] != $post['password2']) {
    $msg = JText::_('PASSWORDS_DO_NOT_MATCH');
    $passOK = false;
} else if (strlen($post['password']) < 6 || !preg_match("/[0-9]/", $post['password'])) {
    $msg = "The password is too short, or it doesn't contain any numbers.";
    $passOK = false;
}
if (!$passOK) {
    $return = @$_SERVER['HTTP_REFERER'];
    if (empty($return) || !JURI::isInternal($return)) {
        $return = JURI::base();
    }
    $this->setRedirect($return, $msg, 'error');
    return false;
}
于 2008-12-02T05:22:09.327 回答