在我的控制器中我有一个注册新成员的视图。
而不是创建一个全新的函数,例如
public function show_registration(){
$this->load->view('registration');
}
public function validate_registration(){
}
而不是做上面的一个,我做了一个函数来显示视图,然后一个新的从视图接收数据,我做了这样的
public function registration(){
if(array_key_exists('submit',$_POST)){
/////if exist process the data here
}else
$this->load->view('registration');
}
上面的if语句检查是否有数据提交给函数,如果没有,则显示视图,否则将处理数据。
这似乎是一种更理想的方式,对吗?然后我想,如果这会引起问题怎么办?
这有可能破坏我的项目吗?我现在开始,我只是想知道我是否应该继续我现在的方式,或者我应该创建一个单独的显示视图。
**编辑:我刚刚意识到,这并不一定检查所有提交的数据,但只有数据提交的按钮的名称'提交',所以只要我保持提交按钮的名称为每个表单尽可能唯一,然后我应该是好的。
示例:注册表单,按钮名称应该是registration.**
下面是一个使用codeigniter的示例
class Form extends CI_Controller {
function index()
{
$this->load->helper(array('form', 'url'));
$this->load->library('form_validation');
if ($this->form_validation->run() == FALSE)
{
$this->load->view('myform');
}
else
{
$this->load->view('formsuccess');
}
}
}
使用Codeigniter,您必须遵循Codeigniter -form-validation来加载视图或提交表单,有关更多信息,请访问Codeigniter form_validation库