2013-11-20 5 views
6

Я пытаюсь создать форму поиска в Codeigniter. Я хочу дать пользователю 4 различных варианта поиска. Для результата я хочу таблицу, которая отображает все 11 столбцов в таблице, которую я ищу. Это код, который у меня есть до сих пор.Форма поиска с Codeigniter

Контроллер:

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(); 

} 
+0

это создало таблицу, но я все еще не могу получить информацию из моей базы данных из форм, которые я создал. – medellin81391

+0

, то у вас что-то не так в вашем запросе –

+0

Я не могу выяснить, в чем проблема с запросом. – medellin81391

Смежные вопросы