我想在用戶提交表單後使用表單驗證。我的視圖頁面有一個由我的控制器傳遞的變量。查看頁面正常工作,直到我提交表單進行驗證。它給了我錯誤,說控制器傳遞的變量是未定義的。我不知道如何解決這個問題。有什麼想法嗎?在Codeigniter中驗證表單後未定義的變量錯誤
// Controller - status.php
public function load_view()
{
$this->load->model('project_query');
$JNresults=$this->project_query->get_jobnumber();
$data['JNresults']=$JNresults->result(); //pass to view
$data['view']='form_view';
$this->load->view('include/template',$data);
}
public function validate()
{
//validate form
$data['error']='There are errors in your form.';
$data['view']='form_view';
$this->load->view('include/template',$data);
}
// View page - form_view.php
foreach ($JNresults as $row): //work fine when first loaded.
echo $row->job_number;
endforeach;
echo form_open('status/validate');
echo validation_errors();
// input fields...
echo form_submit($submit);
echo form_close();
我得到了一個未定義的變量$JNresults
我提交表單後。我明白視圖頁面無法識別它,因爲它是從控制器傳遞來的。我只想知道是否有人能幫我解決這個問題。
謝謝Madmartigan。當您需要加載視圖並驗證表單時,我認爲這是最佳實踐? – FlyingCat 2012-03-06 17:39:27
這就是我在Codeigniter中發現自己的腳時所做的事,我仍然不確定我認爲最佳實踐是什麼,有時我試圖實現真正的[Post/Redirect/Get](http://en.wikipedia)。 org/wiki/Post/Redirect/Get)模式。這取決於,真的。處理表單後請確保'重定向()'。 – 2012-03-06 17:47:51
瞭解。謝謝。 – FlyingCat 2012-03-06 18:45:44