Пагинация не работает при фильтрации данных в коде - PullRequest
0 голосов
/ 15 марта 2019

Поиск-job.php

<input type="checkbox" name="category" id="It jobs" class="category"> It jobs
<input type="checkbox" name="category" id="Hr jobs" class="category"> Hr jobs
<input type="checkbox" name="category" id="Hardware jobs" class="category"> Hardware jobs
<script>
    $(document).ready(function(){
        $(".category").click(function(){
            key = this.id;
            $.ajax({
               type:"POST",
               data:{"key":key},
               url:"<?php echo base_url(); ?>key_job",
               success:function(data){
                   $("#search_filter_job").html(data);
               }
            });
        });
    });
<script>

Контроллер:

public function search_key_job()
{
    $category = $this->input->post('key');

    $config = array();
    $config["base_url"] = base_url()."welcome/search-job";
    $config["total_rows"] = $this->user_data->search_filter_count($category);
    $config["per_page"] = 7;
    $config["uri_segment"] = 3;
    $this->pagination->initialize($config);
    $page = ($this->uri->segment(3)) ? $this->uri->segment(3) : 0;
    $data['result'] = $this->user_data->search_filter($category,$config["per_page"], $page);
    $data["links"] = $this->pagination->create_links();

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

Модель:

public function search_filter($category,$limit, $start)
{
    $where = "category='".$category."'";
    $this->db->where($where);
    $this->db->limit($limit, $start);
    $query = $this->db->get("job");
    if ($query->num_rows() > 0) {
        foreach ($query->result() as $row) {
            $data[] = $row;
        }
        return $data;
    }
    else
    {
        $this->session->set_flashdata('error_msg','<p>We are sorry. No job found</p>');
    }
    return false;
}

public function search_filter_count($category)
{
    $this->db->select('*');
    $this->db->from('job');
    $where = "category='".$category."'";
    $this->db->where($where);
    $query = $this->db->get();
    $result = $query->num_rows();
    return $result;
}

search_key_job.php

<?php
    foreach($result as $row)
    {
?>  
        <h5><?php echo $row->job_title; ?></h4> 
<?php
    }
?>
<p style="text-align: center;width: 73.5%;"><?php echo $links; ?></p>

В этом коде у меня есть несколько checkbox with name="category" Теперь, что я делаю здесь, когда я нажимаю на определенную категорию, затем отображается работа, и нумерация страниц также работает нормально Но при нажатии на следующую кнопку нумерации страниц она обновляет страницу и показывает мне search-job.php страница, но я хочу показать только флажок фильтра данных пагинации. Итак, как я могу это сделать? Пожалуйста, помогите мне.

Спасибо

1 Ответ

0 голосов
/ 15 марта 2019

Вы должны добавить [] к имени вашего флажка:

Пример:

<input type="checkbox" name="category[]" id="It jobs" class="category"> It jobs
<input type="checkbox" name="category[]" id="Hr jobs" class="category"> Hr jobs
<input type="checkbox" name="category[]" id="Hardware jobs" class="category"> Hardware jobs
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...