使用随表单提供的不同参数开发搜索模块。
控制器就像那样
public function searchCourse()
{
$cat_id = $this->input->post('searchkey');
$course_id = $this->input->post('searchkey_course');
//$start_date = date('Y-m-d',strtotime($this->input->post('fromDate')));
$course_name = $this->input->post('searchbyname');
$university_id = $this->session->userdata('university_id');
$data['course'] = $this->crud_model->getcourseSearch($university_id, $course_id, $course_name);
$data['page_title'] = 'My Course';
$this->load->view('frontend/university/mycourse', $data);
}
型号:
public function getcourseSearch($param1 = '', $param2 = false, $param4= false)
{
$this->db->select('*');
$this->db->where('coursep_id', $param1);
if($param2){
$this->db->like('name_of_course', $param2);
}
if($param4){
$this->db->or_like('name_of_course', $param4, 'both');
}
$query=$this->db->get("course");
return $query->result();
}
问题: 问题是第一次查看加载数据列表。这很好但是当使用搜索参数提交表单时,视图被堆叠有不同的结果数据。我怎么能克服这一点。
答案 0 :(得分:0)
当您在模型中调用此函数时,您将传递三个参数$ university_id,$ course_id,$ course_name。
所以$ param1 = university_id,$ param2 = course_id和$ param4 = course_name。
在格式化查询时使用适当的参数。
像: 公共函数getcourseSearch($ param1 ='',$ param2 = false,$ param4 = false)
{
$这 - > DB->选择(' *&#39);
$ this-> db-> where(' coursep_id',$ param2);
如果($ param2的){ $ this-> db-> like(' name_of_course',$ param4);
}
$查询= $这 - > DB->获得("当然&#34);
返回$ query-> result();
}