0
我有一個基於codeigniter框架的網站。我的索引頁上有一個表格,還有一些通過我的數據庫進行的航班價格。如何驗證codeigniter中的表單
這裏是我的形式:
<?php echo validation_errors(); ?>
<form action="<?php echo base_url() ?>detail/travel" method="post">
<input type="text" name="departure">
<input type="text" name="destination">
<input type="text" name="name">
<input type="text" name="cell">
</form>
所以我的問題是,當用戶沒有填滿整個表格並提交按鈕,它進入的「旅行」(函數,我在我的控制器對細節)並且由於錯誤而顯示0結果。我希望該用戶保留在我的索引頁上,並提供所有詳細信息,直到他正確填寫表單並在我的索引頁上顯示錯誤(如果他錯過了我的表單的任何字段)。
這裏是我的功能「旅行」,我有我的控制器(詳細):
function search_travel(){
if($_POST){
$config = array(
array(
'field'=>'departure',
'label'=>'departure',
'rules'=>'trim|required|alpha'
),
array(
'field'=>'destination',
'label'=>'destination',
'rules'=>'trim|required|alpha'
),
array(
'field'=>'name',
'label'=>'name',
'rules'=>'trim|required|alpha'
),
array(
'field'=>'cell',
'label'=>'cell no',
'rules'=>'trim|required|regex_match[/^[0-13]+$/]'
)
);
$this->load->library('form_validation');
$this->load->helper(array('form', 'url'));
$this->form_validation->set_rules($config);
if($this->form_validation->run() == FALSE){
$data['errors']= validation_errors();
}
else{
$destination= $this->input->post('destination');
$this->email->send();
$data['var']= $this->Travel->search_travel($destination);
$this->load->view('details',$data)
}
}
}
和我的索引功能是:
function index(){
$data['fares']= $this->Travel->all_fares();
$this->load->view('index', $data);
}
窗體是在索引文件所以爲了保持索引頁上的錯誤,我只是使用重定向(base_url())? –
檢查你是否得到與它一起顯示的錯誤 – Learner
我在編寫<?php echo $ this-> session-> flashdata('errors');?>時出現錯誤,顯示所有錯誤但我想顯示在每個輸入字段下。我該怎麼辦??? –