Php Joomla 3.2如何编辑登录模块?
要求 我刚开始学习Joomla,我想做的是计算失败登录的次数,并在第5次登录失败后显示Php Joomla 3.2如何编辑登录模块?,php,joomla,joomla2.5,joomla-extensions,joomla3.0,Php,Joomla,Joomla2.5,Joomla Extensions,Joomla3.0,要求 我刚开始学习Joomla,我想做的是计算失败登录的次数,并在第5次登录失败后显示div或验证码 我尝试的 我首先尝试寻找符合要求的扩展(我没有编写任何代码),但不幸的是,所有的扩展似乎都做了其他事情(如尝试失败时发送电子邮件等) 因此,我决定编辑现有的登录模块 class UsersControllerUser extends UsersController { public function login() { //the code here } }
div
或验证码
我尝试的
我首先尝试寻找符合要求的扩展(我没有编写任何代码),但不幸的是,所有的扩展似乎都做了其他事情(如尝试失败时发送电子邮件等)
因此,我决定编辑现有的登录模块
class UsersControllerUser extends UsersController
{
public function login()
{
//the code here
}
}
我真的还没有完全掌握Joomla的概念,但是如果我用“野蛮”的方式来做这件事,我会在那里插入一个查询,以便在每次失败的尝试中在\u users
表下插入/更新某个列
问题
这是正确的方法还是有更“Joomla”的方法
如果我要这样做,在上表中手动添加一列可以吗?(我这样问是因为如果我这样做,可能一些代码会因为缺少/新列等而停止工作)
试试这个
适合您需求的方法是插件,
Joomla有onUserLoginFailure
的默认插件事件。因此,您必须为您的需求创建一个插件
此外,您还提到您正在自定义#u用户
表,请不要这样做,因为bcoz是Joomla core表,一旦更新可用,它将删除您的列。
因此,创建具有正确用户关系的新表,您可以使用user\u id
作为新表中的键,并跟踪失败的尝试
您可以使用插件的一部分创建自定义表,只需安装一个插件即可创建该表。所以请选择标准的Joomla方法
有关插件的更多详细信息,请参阅Joomla默认配置文件插件
希望它有意义。但是,您可以安全地将数据添加到#(u#)用户(u profiles-table,这是一个更通用的自定义用户数据表。非常有用!这正是我想要的答案。在学习了插件之后,我将尝试这个。