【问题标题】:CodeIgniter Pagination wrong generate next linkCodeIgniter 分页错误生成下一个链接
【发布时间】:2015-01-20 04:53:05
【问题描述】:

我退出新手并尝试在 Codeigniter 中进行分页... 我将使用一个额外的参数创建分页..链接第一个参数是用于获取数据库搜索的 ID.. 而不是创建分页...到目前为止我已经完成了,但是下一页链接不正确,因为它应该是正确的。请检查我的代码,让我知道我在做什么错。

这是型号代码.. 我的模型类名称是movie

public function get_movies_by_actor($actor_id,$num=10,$start=0)
{
    $this->db->select(" f.film_id,
                        f.language_id,
                        a.actor_id,
                        f.title,
                        f.description,
                        l.name AS language,
                        c.name AS category,
                        concat(a.first_name, ' ', a.last_name ) AS actor_name
                    ",FALSE);
    $this->db->from('actor AS a');
    $this->db->join('film_actor AS fa', 'fa.actor_id=a.actor_id');
    $this->db->join('film AS f', 'f.film_id=fa.film_id', 'left');
    $this->db->join('language AS l', 'l.language_id=f.language_id', 'left');
    $this->db->join('film_category AS fc', 'f.film_id=fc.film_id', 'left');
    $this->db->join('category AS c', 'c.category_id=fc.category_id', 'left');
    $this->db->where('a.actor_id', $actor_id);
    $this->db->order_by('f.film_id','desc')->limit($start,$num);
    $query = $this->db->get();
    return $query->result();
}

这个和控制器代码。 我的控制器类名是movies

public function actor_movie($actor_id,$start=0)
{
    $data['movies']=$this->movie->get_movies_by_actor($actor_id,$start,10);
    $this->load->library('pagination');
    $config['base_url'] = base_url().'index.php/movies/actor_movie/'.$actor_id.'/';
    $config['total_rows'] = $this->movie->get_total_movies();
    $config['per_page'] = 10;
    $config['display_pages'] = FALSE;
    $config['first_link'] = FALSE;
    $config['last_link'] = FALSE;

    $config['next_tag_open'] = '<li class="next">';
    $config['next_link'] = 'Older Post &rarr;';
    $config['next_tag_close'] = '</li>';

    $config['prev_tag_open'] = '<li class="prev">';
    $config['prev_link'] = '&lt Newer Post';
    $config['prev_tag_close'] = '</li>';

    $this->pagination->initialize($config); 

    $data['pagination_links'] = $this->pagination->create_links();
    $data['title'] = '$this->pagination->create_links()';

    $this->load->view('header');
    $this->load->view('actor_movies',$data);
    $this->load->view('footer');
}

【问题讨论】:

  • 你需要为你的分页段添加 $config['uri_segment'],在你的情况下它将是 4 这里是设置 $config['uri_segment'] = 4

标签: php codeigniter pagination


【解决方案1】:

只需要在Controller Function的分页$config数组中添加uri_segment...

$config['uri_segment'] = 4;

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-07-19
    • 2010-11-23
    • 2013-10-28
    • 1970-01-01
    相关资源
    最近更新 更多