寻呼无法返回到上一个号码


Pagination can not back to prev number

我有分页,如果我单击下一个数字,我的分页工作正常。

视图:

12>

如果我点击2,它会进入第二页并显示正确的结果。但如果我想回到1,它不会重定向到第1页。这是我的控制器代码:

public function index($date_start = 'all', $date_end = 'all', $title = 'all', $cid = 0, $skpd = 'all', $offset = NULL)
{
    if($_POST)
    {
        $filter = array(
            ($this->input->post('filter_date_start') == '') ? 'all' : $this->input->post('filter_date_start'),
            ($this->input->post('filter_date_end') == '') ? 'all' : $this->input->post('filter_date_end'),
            ($this->input->post('filter_title') == '') ? 'all' : $this->input->post('filter_title'),
            ($this->input->post('filter_kategori') == 0) ? 0 : $this->input->post('filter_kategori'),
            ($this->input->post('filter_skpd') == '') ? 'all' : $this->input->post('filter_skpd')
        );
        $url = implode('/', $filter);
        redirect('document/index'.$url);
    }
    //echo urldecode($title);
    $this->load->model('News_model');
    $this->load->library('pagination');
    $data['title'] = 'Informasi Publik';
    $param_document = array('status' => 1);
    if(!empty($tid)) $param_document['tid'] = $tid;
    if($date_start != 'all') $param_document['date_start'] = $date_start;
    if($date_end != 'all') $param_document['date_end'] = $date_end;
    if(!empty($cid)) $param_document['cid'] = $cid;
    if($title != 'all') $param_document['title'] = urldecode($title);
    if($skpd != 'all') $param_document['skpd'] = $skpd;
    $params_total = $param_document;
    $param_document_berkala = $param_document;
    $param_document_serta_merta = $param_document;
    $param_document_setiap_saat = $param_document;
    $param_document_dikecualikan = $param_document;
    $param_document['limit'] = 10;
    $param_document['offset'] = $offset;
    $data['document'] = $this->Document_model->get($param_document);
    //dimodif cara urang
    $data['bijilkategori'] = $this->Document_model->tampil();
    // get document download count
    foreach($data['document'] as $i => $row)
    {
        $document_transaction = $this->Document_model->get_transaction(array('did' => $row['document_id']));
        $data['document'][$i]['download_count'] = empty($document_transaction) ? 0 : $document_transaction[0]['count'];
    }
    /*
    $config['base_url'] = site_url('document/index/'.
        (empty($tid) ? 0 : $tid).'/'.$date_start.'/'.$date_end.'/'.
        $title.'/'.(empty($cid) ? 0 : $cid).'/'.$skpd
    );
    */
    $config['base_url'] = site_url('document/index/'.
        $date_start.'/'.$date_end.'/'.
        $title.'/'.(empty($cid) ? 0 : $cid).'/'.$skpd
    );
    $config['total_rows'] = count($this->Document_model->get($params_total));
    $config['uri_segment'] = 9;
    $this->pagination->initialize($config);
    $data['main'] = 'document/document_indeks';
    $data['kategori'] = $this->get_category();
    $data['type'] = $this->get_type(TRUE);
    $data['filter_kategori'] = $cid;
    //dihidden ku urang
    //$data['filter_type'] = $tid;
    $data['filter_date_start'] = ($date_start == 'all') ? '' : $date_start;
    $data['filter_date_end'] = ($date_end == 'all') ? '' : $date_end;
    $data['filter_title'] = ($title == 'all') ? '' : $title;
    $data['filter_author'] = ($skpd == 'all') ? '' : $skpd;
    $param_document_berkala['tid'] = 1;
    $param_document_serta_merta['tid'] = 2;
    $param_document_setiap_saat['tid'] = 3;
    $param_document_dikecualikan['tid'] = 4;
    $data['total_record'] = count($this->Document_model->get($params_total));
    $data['total_record_berkala'] = count($this->Document_model->get($param_document_berkala));
    $data['total_record_serta_merta'] = count($this->Document_model->get($param_document_serta_merta));
    $data['total_record_setiap_saat'] = count($this->Document_model->get($param_document_setiap_saat));
    $data['total_record_dikecualikan'] = count($this->Document_model->get($param_document_dikecualikan));
    $this->load->view('layout', $data);
}

型号:

public function get($params = array())
{
    if(isset($params['fields']))
    {
        $this->db->select($params['fields']);
    }
    else
    {
        $this->db->select('*');
    }
    if(isset($params['id']))
    {
        $this->db->where('document.document_id', $params['id']);
    }
    elseif(isset($params['code']))
    {
        $this->db->where('document_code', $params['code']);
    }
    elseif(isset($params['date_start']) AND isset($params['date_end']))
    {
        $this->db->where('document_date >=', $params['date_start'].' 00:00:00');
        $this->db->where('document_date <=', $params['date_end'].' 23:59:59');
    }
    elseif(isset($params['tid']))
    {
        $this->db->where('type_id', $params['tid']);
    }
    elseif(isset($params['cid']))
    {
        $this->db->where('document.category_id', $params['cid']);
    }
    elseif(isset($params['uid']))
    {
        $this->db->where('user_id', $params['uid']);
    }
    elseif(isset($params['sid']))
    {
        $this->db->where('document.skpd_id', $params['sid']);
    }
    if(isset($params['title']))
    {
        $this->db->like('document_title', $params['title']);
    }
    if(isset($params['author']))
    {
        $this->db->like('document_author', $params['author']);
    }
    elseif(isset($params['date']))
    {
        $this->db->where('document_date', $params['date']);
    }
    if(isset($params['dsid']))
    {
        $this->db->where('document_skpd_id', $params['dsid']);
    }
    if(isset($params['status']))
    {
        $this->db->where('document_is_published', $params['status']);
    }
    if(isset($params['document_sync']))
    {
        $this->db->where('document_sync', $params['document_sync']);
    }
    if(isset($params['sync']))
    {
        $this->db->reset_query();
        $this->db->select('document.*');
        $this->db->where('document_sync', $params['sync']);
    }
    if(isset($params['limit']))
    {
        if(!isset($params['offset']))
        {
            $params['offset'] = NULL;
        }
        $this->db->limit($params['limit'], $params['offset']);
    }
    if(isset($params['order_by']))
    {
        $this->db->order_by($params['order_by'], 'desc');
    }
    else
    {
        $this->db->order_by('document_date', 'desc');
    }
    $this->db->select('document.document_id');
    $this->db->join('user_desktop', 'user_desktop.user_desktop_id = document.operator_id');
    $this->db->join('(SELECT document_id, MAX(document_file_id) AS document_file_max_id FROM document_file GROUP BY document_id) AS document_file_max', 'document.document_id = document_file_max.document_id', 'left', FALSE);
    $this->db->join('document_file', 'document_file.document_file_id = document_file_max.document_file_max_id', 'left');
    $this->db->join('document_type', 'document_type.document_type_id = document.type_id');
    $this->db->join('document_form', 'document_form.document_form_id = document.form_id');
    $this->db->join('document_category', 'document_category.category_id = document.category_id');
    $this->db->join('skpd', 'skpd.skpd_id = document.skpd_id');
    $res = $this->db->get('document');
    if(isset($params['id']))
    {
        return $res->row_array();
    }
    else
    {
        return $res->result_array();
    }
}

请掌握如何修理?我的分页有什么问题

请尝试以下操作:

 $config['base_url'] = site_url('document/index/'.
        $date_start.'/'.$date_end.'/'.
        $title.'/'.(empty($cid) ? 0 : $cid).'/'.$skpd.'/'
    );
$config['uri_segment'] = 8;

在您的base_url中,您在末尾错过了/,代码点火器为分页放置了偏移。因此,uri_segment将是8。