我有一個頁面,其中包含一個表單,當任何用戶提交時,數據將發送到控制器,控制器檢查驗證,如果有任何錯誤,它會將用戶重定向到上一頁(包含表單的頁面),否則它將數據發送到模型。如何通過重定向()傳遞驗證錯誤數據?
從控制器重定向到前一頁(如果有任何驗證錯誤),我有以下的代碼
redirect($this->input->post('redirect'));
上面的代碼工作正常,但問題是它的用戶重定向到後上一頁(包含表單的頁面)不顯示驗證錯誤。
那麼你會請告訴我如何通過上面發佈的這個「重定向」代碼來驗證錯誤信息,並在該頁面上顯示驗證錯誤消息?
由於提前:)
解決方案:
在我的控制器:
$redirect=$this->input->post('redirect'); // << for this I have- <input name="redirect" type="hidden" value="<?= $this->uri->uri_string() ?>" /> in my view file
$this->session->set_flashdata('errors', validation_errors());
redirect($this->input->post('redirect'));
以我視圖文件:
<?php
if ($this->session->flashdata('errors')){ //change!
echo "<div class='error'>";
echo $this->session->flashdata('errors');
echo "</div>";
}
?>
因此我可以通過通過驗證錯誤數據從控制器重定向到前一頁
看看http://stackoverflow.com/questions/2000621/codeigniter-how-to-redirect-properly-with-form-validation –