2011-12-19 33 views
1

我正在使用Codeigniter框架,并且正在创建注册表单的过程中。注册过程分多步完成 - 为此我创建了不同的视图。我如何使用Codeigniter框架使用表单?

我有一个问题是让控制器读取,我继续了一个新的步骤。我试图通过张贴到index.php/controller/2的形式解决此问题,但当我到达页面时,我得到一个404错误,说明

页面不存在。

我已经加载了URI助手,所以我不太明白问题出在哪里。

所有帮助是非常赞赏

回答

3

通过形式提交给index.php/controller/2你实际上是说

  • 负载/application/controllers/Controller.php
  • 实例化类控制器
  • 运行控制器:: 2()

我怀疑你没有一个名为2的方法,并且您想要将两个作为参数传递给处理步骤1的方法。其中可能是/controller/register或类似的。

您需要提交表单index.php/controller/method/2和内部method检查哪一步你在使用$this->uri->segment(2)

理想的情况下,为每一个步骤,因为它会更好地分离的逻辑不同的方法。例如

class Registration { 
    function step_1() {} 
    function step_2() {} 
} 

,这将使你打电话例如index.php/registration/step_1/index.php/registration/step_2/

您也可能希望使用Session类来设置变量,指出哪些阶段已完成,以防止人们通过输入URL跳到其他阶段。

+0

ofc这是简单,有趣的事情是我读了10次手册,它清楚地说example.com/class/function/ID,但有时你得到隧道的视野,你不会得到狗屎......:P thx很多帮助btw :) – Breezer 2011-12-19 16:24:00