首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将CodeIgniter/TankAuth的注册表和登录表单放在同一页上?

如何将CodeIgniter/TankAuth的注册表和登录表单放在同一页上?
EN

Stack Overflow用户
提问于 2012-02-11 14:02:46
回答 2查看 799关注 0票数 0

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

我目前正在控制器/signup.php.index()中使用它...

代码语言:javascript
复制
            $this -> load -> view('templates/header');
            $this -> login();
            $this -> register();
            $this -> load -> view('templates/footer');

它可以正确显示,但我有两个问题:

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

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

(如果这篇文章太过具体领域或含糊不清,我很抱歉;我希望它对那些使用过该框架的人有意义。)

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-02-11 22:56:27

我不确定你试图通过组合登录和注册视图来达到什么目的,它们不是被设计成一起工作的,所以你肯定需要对基本的库身份验证结构做一些修改。

这真的不应该是一个令人困惑的问题,因为这只是你自己通过组合两个非常相似的表单而造成的问题。

要简单地浏览一下这段代码(我不知道您编写的代码会发生什么变化),首先必须创建您自己的登录(html),设置表单action="/auth/login"

登录将提交,如果用户已经登录,您可以这样处理,如果他们登录失败,他们将被带到单页面登录(默认/或修改),在那里他们可以重试。

同样的方法也应该用于注册,设置表单action="/auth/register"并让它根据tank身份验证控制器提交。同样,如果注册成功,它们将穿梭在任何地方,否则将被带到单个注册页面。

使用原始的登录和registration视图开始您需要更改/更新的内容。

Tank Auth实际上是一个插件,你需要修改它以满足你的需要,它的代码是干净和清晰的,所以只需要通过它来理解在登录时发生了什么,在注册时发生了什么,激活时发生了什么,否则把这些东西混在一起是不会给你带来任何好处的。在我个人使用该库的经验中,我总是在初始设置之外对其进行修改,这只是因为它很容易做到。

票数 1
EN

Stack Overflow用户

发布于 2012-11-16 03:41:49

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

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9238226

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档