0

所以我有一个搜索框可以在我的工厂表中搜索。它就像一个魅力,但我对codeigniter还是新手。

我是否需要使用 select 在我的数据库中选择多个表?

我的控制器功能:

    function search()
    {
        $this->load->view('views/header');
        $this->load->view('views/search');
        $this->load->view('views/footer');
    }

    function searchresults()
    {
        $match = $this->input->post('search');
        $data['query'] = $this->bedrijven_model->get_search($match);
        $this->load->view('views/header');
        $this->load->view('views/searchresults', $data);
        $this->load->view('views/footer');
    }

我的模型:

function get_search($match)
{
    $this->db->like('Bedrijfsnaam', $match);
    $this->db->or_like('Postcode', $match);
    $this->db->or_like('Plaats', $match);
    $this->db->or_like('Telefoonnummer', $match);
    $this->db->or_like('Email', $match);
    $this->db->or_like('Website', $match);
    $this->db->or_like('Profiel', $match);
    $this->db->or_like('Adres', $match);
    $query = $this->db->get('bedrijven');

    return $query->result();
}

我还想知道您是否可以将模型中的搜索功能放入控制器中。因为那时我需要为每个表创建一个新的模型函数。

提前致谢。

4

2 回答 2

4

尝试加入两个表,然后像这样应用

$this->db->like('Bedrijfsnaam', $match);
$this->db->or_like('Postcode', $match);
$this->db->or_like('Plaats', $match);
$this->db->or_like('Telefoonnummer', $match);
$this->db->or_like('Email', $match);
$this->db->or_like('Website', $match);
$this->db->or_like('Profiel', $match);
$this->db->or_like('Adres', $match);

在 col1,col2 中的 table2 中搜索匹配项

$this->db->or_like('table2.col1',$match);
$this->db->or_like('table2.col2',$match);

最后将上面应用了喜欢的表与表1连接起来

$this->db->join('table2','table1.id = table2.id');
$query = $this->db->get('bedrijven');
于 2013-04-02T11:16:06.187 回答
0

用户指南中的示例应说明这一点:

$this->db->select('*'); // <-- There is never any reason to write this line!
$this->db->from('blogs');
$this->db->join('comments', 'comments.id = blogs.id');

$query = $this->db->get();

// Produces:
// SELECT * FROM blogs
// JOIN comments ON comments.id = blogs.id

查看用户指南中Active Record页面下的全部内容。

于 2013-04-02T11:17:30.383 回答