表单提交和PHP最佳实践


Form submissions and PHP best practice

在Codeigniter和其他PHP应用程序中,通常认为更有效的做法是:

1.)使用隐藏的"已提交"输入向同一功能提交表单:

public function standard_form()
{
   if($this->input->post('submitted'))
   {
      // Process data
   }
   else
   {
      // Render form view
   }
}

2.)向以下不同功能提交表格:

public function standard_form()
{
    // Render form view
}
public function standard_form_process()
{
    // Process data
}

我知道有些人会对这个问题的"主观"性质表示不满,但我想知道使用其中一个而不是另一个的任何战略(即相对客观)好处。

我总是使用1。)版本,除非我的代码真的很复杂,最好使用2。)为了更好地处理数据及其输出,

您使用相同的,因此如果验证失败,并且您重新加载页面,则它是相同的URL、相同的书签等。