データベース内の工場を検索するための検索フォームがあります。私の工場テーブルには「郵便番号」というフィールドがあり、初めてサイトにアクセスしたときに郵便番号を入力する必要があります。これは Cookie に保存されるため、再度変更する必要はありません。
ここで、検索用語と Cookie の「郵便番号」を使用して工場を検索したいと考えています。
ここに私の検索フォームがありますhttp://kees.een-site-bouwen.nl/
だから、このようなもの:
<form action="home/searchresults" method="post">
<input type="search" placeholder="search..." name="search">
<input type="search" value="<?= $this->input->cookie('postcode')?>">
</form>
そして私のコントローラーでは次のようなものです:
$match = $this->input->post('search');
$match2 = $this->input->cookie('postcode');
$data['query'] = $this->bedrijven_model->get_search($match, $match2);
$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);
$this->db->or_like('Categorie', $match);
$this->db->join('bedrijven', 'bedrijfcategorieen.idbedrijven = bedrijven.idbedrijven');
$this->db->join('categorieen', 'bedrijfcategorieen.idcategorieen = categorieen.idcategorieen');
$this->db->group_by('bedrijfcategorieen.idbedrijven', 'bedrijfcategorieen.idcategorieen');
$query = $this->db->get('bedrijfcategorieen');
return $query->result();
}
しかし、これはうまくいきません。ここで同様の質問をしました:コントローラー関数でのクエリのオーバーライドを防ぐ - codeigniter
しかし、私のために働いた答えはありません。