我正在尝试在Codeigniter中创建搜索表单。我想给用户4个不同的搜索选项。对于结果,我想要一个表,显示我正在搜索的表中的所有11列。这是我到目前为止的代码。
控制器:
public function index(){
$this->searchTest();
}
public function searchTest(){
$this->load->model('reg_model');
$search_term = array(
'firstName' => $this->input->post('firstName'),
'lastName' => $this->input->post('lastName'),
'street' => $this->input->post('street'),
'dob' => $this->input->post('dob'));
$data['query'] = $this->reg_model->test($search_term);
$this->load->view("reg_header");
$this->load->view("reg_nav");
$this->load->view("reg_search_form", $data);
$this->load->view("reg_search", $data);
型号:
public function test($search_term='default'){
$this->db->select('*');
$this->db->from('voterinfo');
$this->db->like('firstName', $search_term);
$this->db->or_like('lastName', $search_term);
$this->db->or_like('street', $search_term);
$this->db->or_like('dob', $search_term);
$query = $this->db->get();
return $query->result_array();
}
查看:
<?php $this->load->library('table'); foreach ($query as $row){ echo $this->table->generate($row); }?>
答案 0 :(得分:4)
如果你想使用codeigniter表类放入表,它应该是这样的:
$this->load->library('table');
$this->table->set_heading(array('Name', 'Color', 'Size')); //your column name
foreach($query as $row ){
$this->table->add_row($row);
}
echo $this->table->generate();
您还需要修改模型。你查询错了,你忘记了密钥,它应该是这样的:
public function test($search_term='default'){
$this->db->select('*');
$this->db->from('voterinfo');
$this->db->like('firstName', $search_term['firstName']);
$this->db->or_like('lastName', $search_term['lastName']);
$this->db->or_like('street', $search_term['street']);
$this->db->or_like('dob', $search_term['dob']);
$query = $this->db->get();
return $query->result_array();
}