标题中的CodeIgniter搜索框

时间:2015-10-30 12:02:56

标签: php codeigniter

我的搜索框包含在标题中。我想要这样当我为搜索键入任何单词时,它会从我的数据库中获取结果并转到带有结果的搜索视图页面。我的标题也包含在不同的控制器中。

这是我的控制器

public function index()
{ 
    if($this->input->post('submit')) 
    {
        if($this->input->post('search') == '')
        {
            redirect('search');
        }
        $keyword        =   $this->input->post('search');
        $data['rows']   =   $this->search_model->search($keyword);
    }
    $this->load->view('header');
    $this->load->view('search',$data);
    $this->load->view('footer');
}

这是我的模特

function search($keyword)
{
    $this->db->like('title', $keyword);
    $this->db->or_like('type', $keyword);
    $query  =   $this->db->get('mytable');
    return $query->result();
}

这是我的观点

<form class="navbar-form" role="search" action="<?php echo base_url();?>search" method="post">
      <div class="input-group cust-input">
        <input type="text" class="form-control" placeholder="Search" name="search">
        <div class="input-group-btn ">
       <button class="btn btn-default cust-searchbtn" type="submit" name="submit"><i class="glyphicon glyphicon-search"></i></button>

        </div>
      </div>
    </form>

但是当我搜索某些内容时,它会重定向到我的搜索页面,结果为空。我想在标题中搜索并将结果发送到我的搜索页面,在那里我在该页面上显示结果。

2 个答案:

答案 0 :(得分:0)

public function index()
{ 
  if(isset($this->input->post('submit'))) 
  {   
    $keyword        =   $this->input->post('search');
    $this->load->model('model_name');
    $data['rows']   =   $this->search_model->search($keyword);
    print_r($data['rows']); //print and check the results are fetching or not---then load it to view.
    $this->load->view('header');
    $this->load->view('search',$data);
    $this->load->view('footer');
  }
  else
  {
     redirect('search');
  }
}

答案 1 :(得分:0)

尝试在顶部的“搜索”视图页面上加载“标题”视图。然后是您的搜索视图的HTML代码。完成“搜索”视图的HTML代码后,再加载“页脚”。 例如。你的控制器:

public function index()
{ 
  if($this->input->post('submit')) 
  {
    if($this->input->post('search') == '')
    {
        redirect('search');
    }
    $keyword        =   $this->input->post('search');
    $data['rows']   =   $this->search_model->search($keyword);
  }

  $this->load->view('search',$data);

}

您的观点:

 <?php $this->load->view('header'); ?>

<form class="navbar-form" role="search" action="<?php echo           base_url();?>search" method="post">
  <div class="input-group cust-input">
    <input type="text" class="form-control" placeholder="Search"   name="search">
    <div class="input-group-btn ">
   <button class="btn btn-default cust-searchbtn" type="submit" name="submit"><i class="glyphicon glyphicon-search"></i></button>

    </div>
  </div>
</form>
<?php $this->load->view('footer'); ?>