php - 分页 'previous' 链接在 codeigniter 中不起作用

标签 php html mysql codeigniter

这是我的分页代码。当我单击“下一页”按钮时,它会显示下一页,其中包含剩余的产品图像,但如果我单击“上一页”,它会显示空白页面。我为另一个页面分页应用了相同的代码,它的工作原理很好,但它不适用于此页面。

Controller

     public function onSectorClick1() {

            $id = $_GET["id"];

            $this->session->set_userdata('subcategory2_id', $_GET['id']);
            $this->session->set_userdata('subcategory2_name', $_GET['name']);
            $this->onSectorClick1Copy();
        }

        public function onSectorClick1Copy() {



            $data['ListMenuLevel1'] = $this->Categories_model->listsector1();

            $config = array();
            $config["base_url"] = base_url() ."index.php/welcome/onSectorClick1Copy";
            $total_row = $this->productdisplay_model->subproductlist_count($this->session->userdata('subcategory2_id'));
            $config['total_rows'] = $total_row;
            $config['per_page'] = 20;
            $config['uri_segment'] = 3;
            $config['use_page_numbers'] = TRUE;
            $config['num_links'] = 1;
            $config['cur_tag_open'] = '&nbsp;<a class="current">';
            $config['cur_tag_close'] = '</a>';
            $config['next_link'] = 'Next';
            $config['prev_link'] = 'Previous';
            $this->load->library('pagination');
            $this->pagination->initialize($config);

            $page = ($this->uri->segment(3) != '' ? $this->uri->segment(3) : 1);

            $offset = (($config['per_page']) * ($page - 1));
            $limit = $config['per_page'] * $page ;
            $data['sub2products'] = $this->productdisplay_model->sub2Productsmenu($this->session->userdata('subcategory2_id'),$limit, $offset);
            $str_links = $this->pagination->create_links();
            $data["links"] = explode('&nbsp;', $str_links);
            $this->load->view('subproductlist', $data);
        }

型号

     public function subproductlist_count($id) {
            $this->db->select('*');
            $this->db->from('sub2_category');
            $this->db->where('sub1_categoryid_fk', $id);
            $this->db->order_by("sub2_category.sub1_categoryid_fk ");
            $query = $this->db->get();
            return  $query->num_rows();

        }



        public function sub2Productsmenu($id,$limit, $offset){

            $this->db->select('*');
            $this->db->from('sub2_category');
            $this->db->where('sub1_categoryid_fk', $id);
            $this->db->order_by("sub2_category.sub1_categoryid_fk ");
            $this->db->limit($limit, $offset);
            return $this->db->get()->result();


        }

查看

     <div class="center">
                <ul class="pagination">
                     <?php
                    foreach ($links as $link) {
                        echo "<li>" . $link . "</li>";
                    }
                    ?>
                </ul>
            </div>

最佳答案

这就是我创建分页的方式,它工作得很好。下面是 Controller 中的代码。

    $config['base_url'] = base_url().'property/properties';
    $config['total_rows'] = $this->property_model->countProperties();
    $config['per_page'] = 6;
    //===========================//
    // Defining Pagination Styles//
    //===========================//
    $config['full_tag_open'] = '<ul class="pagination">';
    $config['full_tag_close'] = '</ul>';
    $config['prev_link'] = '<span aria-hidden="true">&laquo;</span>';
    $config['prev_tag_open'] = '<li>';
    $config['prev_tag_close'] = '</li>';
    $config['next_link'] = '<span aria-hidden="true">&raquo;</span>';
    $config['next_tag_open'] = '<li>';
    $config['next_tag_close'] = '</li>';
    $config['cur_tag_open'] = '<li class="active"><a href="#">';
    $config['cur_tag_close'] = '</a></li>';
    $config['num_tag_open'] = '<li>';
    $config['num_tag_close'] = '</li>';
    $config['first_tag_open'] = '<li>';
    $config['first_tag_close'] = '</li>';
    $config['last_tag_open'] = '<li>';
    $config['last_tag_close'] = '</li>';
    $config['first_link'] = '&lt;&lt;';
    $config['last_link'] = '&gt;&gt;';
    $this->pagination->initialize($config);
    $data['properties']=$this->property_model->getAllProperties($config['per_page'],$offset);
    $data['pagination']=$this->pagination->create_links();

在我看来

<!-- Start properties content bottom -->
<?php if(isset($pagination)){?>
 <div class="aa-properties-content-bottom">
  <nav>
    <?php echo $pagination?>
  </nav>
 </div>
<?php }?>

关于php - 分页 'previous' 链接在 codeigniter 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42732494/

相关文章:

javascript - SVG 文本位于矩形奇怪的布局之上

javascript - 在绘制矩形之前更改 lineCap 和 lineJoin 没有任何作用?

android - Last Modified 或 IfModifiedSince Android SQL HTTP

php - 使用同一个 Blade 添加和编辑内容的最佳实践

javascript - MySQL 和 PHP : Loop through table find value if it exists update if not insert new value

php在同一页面上打开列出的文件/目录而不重定向

mysql - 两个不同的表日期列应该相同,金额列应该不同,如何计算每月支出金额?

php - 在域指向的地方之外引用公共(public)文件

php - 将 JavaScript 变量发送到 PHP 变量的安全性

php - WordPress sha 256登录