如何将表单数据发送到CodeIgniter库?

时间:2010-07-18 22:55:51

标签: php codeigniter

我在CodeIgniter中有一个自定义的Auth库,想要从注册表单发送数据。

我知道将数据发送到我做的控制器:

echo form_open('login/validate');

并将数据发送到登录控制器的验证功能。那么如何将数据发送到库而不是控制器?

2 个答案:

答案 0 :(得分:3)

Codeigniter中的库并不是按照您要求我们帮助您使用它们的方式使用的。库只不过是一个或多个PHP类,它们包含执行特定操作的函数和变量。

您应该真正在控制器内部进行所有通信工作,然后将数据从控制器发送到库函数。不要破坏惯例。

因此,如果您想将POST数据传递给库函数,这里有一些示例代码(更改为适合您自己的应用程序):

$this->load->library('example_library');  
$username = $this->input->post('username');  
$password = $this->input->post('password');  

$this->example_library->set_username($username);
$this->example_library->set_password($password);
$this->example_library->set_method('clean_then_login');
$this->example_library->do_login();

基本上,上面的数据通过POST方法(从您的视图表单)发送到控制器,然后从示例库中调用一些函数,设置用户名,密码方法来处理登录详细信息,然后执行登录。 / p>

另一个简单的信息是,您可以通过对上面的库加载代码进行小幅调整来更改引用库的方式:

$this->load->library('example_library', 'example');

这将允许您引用您的库,而不会像下面那样长:

$this->example->set_username($username);

希望这有助于您了解如何将数据传递给控制器​​,然后将其发送到库函数和/或函数。

答案 1 :(得分:0)

让您的控制器与您的auth库通信或编写过滤器以获取来自表单的参数。