阻止表单重新提交codeigniter的最佳方法

时间:2013-11-21 11:20:15

标签: php codeigniter

总是对表单重新提交感到困惑。我知道标题和会话是正确的方法。但我不知道如何正确使用codeigniter。假设

对于单个插入和更新查询

    $this->db->query(' insert/up query');
    $this->session->set_flashdata('success_message','successfully inserted');
    redirect('my_contoller/home/index');

传递$data数组

$data['pass_data']="some array elements";
$this->session->set_flashdata('pass_data_from_flash_data',$data['pass_data']);
redirect('my_contoller/home/index',$data);

如果上述技术是正确的,我如何传递查询数据进行检索。假设我有一个返回许多数据的查询。如

 $query = $this->db->query(" a query which return large data");
 $data['return_large_result']=$query->result_array(); 

我只是对使用set_flashdata函数感到困惑。是正确的方式吗?

1 个答案:

答案 0 :(得分:1)

您使用的上述方法是valid web development design pattern。 Codeigniter对于这种方法有点乱,但基本上是的,它是Codeigniter中的正确方法。

其他框架(例如Laravel)更好地支持此功能,允许您通过Input::old()以及其他方法访问旧输入。