Php 如何放置CodeIgniter';s/TankAuth';s在同一页上注册和登录表单?

Php 如何放置CodeIgniter';s/TankAuth';s在同一页上注册和登录表单?,php,codeigniter,authorization,registration,tankauth,Php,Codeigniter,Authorization,Registration,Tankauth,我在php框架中使用CodeIgniter,在授权/注册中使用TankAuth。默认情况下,TankAuth将注册和登录表单放在单独的页面上。我想将登录表单放在每页出现的导航栏中。还有一个注册页面,其中注册表单与登录表单同时出现(位于导航栏中) 我目前正在controllers/signup.php.index()中使用此函数 这显示正确,但我有两个问题: 1我是否必须在每个具有登录表单的控制器中重新定义TankAuth的方法 2当我尝试注册时,它告诉我也应该填写登录表。这显然是第二十二条军规

我在php框架中使用CodeIgniter,在授权/注册中使用TankAuth。默认情况下,TankAuth将注册和登录表单放在单独的页面上。我想将登录表单放在每页出现的导航栏中。还有一个注册页面,其中注册表单与登录表单同时出现(位于导航栏中)

我目前正在controllers/signup.php.index()中使用此函数

这显示正确,但我有两个问题:

1我是否必须在每个具有登录表单的控制器中重新定义TankAuth的方法

2当我尝试注册时,它告诉我也应该填写登录表。这显然是第二十二条军规


(如果这是一个过于特定于领域或含糊不清的问题,我深表歉意;我希望这对那些使用过该框架的人来说是有意义的。)

我不确定您仅仅通过组合登录和注册视图来实现什么,它们不是为一起工作而设计的,因此,您确实需要对basetank auth结构进行一些修改

这真的不应该是一个令人困惑的问题,因为这只是一个您通过组合两种非常相似的形式为自己创建的问题

为了简单地了解这一点,(我不知道您做了哪些代码更改,如果有的话),首先必须创建自己的登录名(html),设置表单
action=“/auth/login”

登录将提交,如果用户已登录,您可以这样处理,但是如果用户登录失败,他们将进入单页登录(默认/或修改),然后重试

注册时也应遵循同样的方法,设置表单
action=“/auth/register”
,并让其针对坦克验证控制器提交。同样,如果注册成功,他们将在任何地方穿梭,否则将进入单个注册页面

使用原始的登录注册视图作为您需要更改/更新的开始


Tank Auth实际上是一个插件,您需要修改它以满足您的需要,它的代码是干净清晰的,所以只需浏览一下它,就可以了解登录时发生的事情,注册、激活等时发生的事情,否则将这些事情混在一起不会有任何效果。根据我个人使用该库的经验,我总是在初始设置之后对其进行修改,只是因为它很简单。

我不确定这是否仍然是一个问题,但如果您真的想这样做,您可以将一个视图作为
IFRAME
包含在另一个视图中,而不存在任何问题。

这并不是我的真正意思,但它比我最初寻找的更能帮助我。
            $this -> load -> view('templates/header');
            $this -> login();
            $this -> register();
            $this -> load -> view('templates/footer');