Я использую версию codeigniter 2.2.x. В основном у меня есть несколько сообщений в моей базе данных, и я показываю 2 страницы. Поскольку все вы знаете, что разбиение на страницы отображает от 1 до общего количества страниц, и, щелкнув, скажем, 3, url должен быть чем-то вроде blog/pages/3, но мой идет до 4, 4 идет до 6, 5 идет до 8 и так далее , Отношение похоже; если число пагинации является х, и один показывает на URL есть у, у = 2 * х-2 ... Вот мои настройки конфигурации (контроллер):Кодиментарные номера страниц и URL показаны разные номера
function index()
{
$this->load->Model('sayfalama_model', 'Model');
$this->load->library('pagination');
$data['sayfalama_linkleri'] = $this->sayfalama_linkleri($this->Model->yazilar_adet());
$data['yazilar'] = $this->Model->yazilar($this->uri->segment(3,0),2);
$data['title'] = 'Blog Arşivi';
$this->load->view('templates/header', $data);
$this->load->view('templates/menu', $data);
$this->load->view('blog/index', $data);
$this->load->view('templates/footer', $data);
}
function sayfalama_linkleri($toplam)
{
$config = array(
'base_url' => site_url('blog/sayfa'),
'first_url' => site_url('blog/sayfa/1'),
'total_rows' => $toplam,
'per_page' => 2,
'page_query_string' => FALSE,
'use_page_numbers' => FALSE,
'num_links' => 2,
'uri_segment' => 3,
'full_tag_open' => '<ul class="pagination pull-right">',
'full_tag_close' => '</ul>',
'first_link' => 'İlk Sayfa',
'first_tag_open' => '<li>',
'first_tag_close' => '</li>',
'last_link' => 'Son Sayfa',
'last_tag_open' => '<li>',
'last_tag_close' => '</li>',
'next_link' => '»',
'next_tag_open' => '<li>',
'next_tag_close' => '</li>',
'prev_link' => '«',
'prev_tag_open' => '<li>',
'prev_tag_close' => '</li>',
'cur_tag_open' => '<li><span class="current">',
'cur_tag_close' => '</span></li>',
'num_tag_open' => '<li>',
'num_tag_close' => '</li>'
);
$this->pagination->initialize($config);
return $this->pagination->create_links();
}
и это моя модель:
class Sayfalama_model extends CI_Model{
function yazilar($baslangic, $limit)
{
$sql = "SELECT * FROM news ORDER BY id ASC LIMIT $baslangic,$limit";
$query = $this->db->query($sql);
if($query->num_rows() > 0)
{
return $query->result_array();
}
else
{
return FALSE;
}
}
function yazilar_adet()
{
$sql = "SELECT COUNT(*) as adet FROM news";
$query = $this->db->query($sql);
return (int)$query->row()->adet;
}
}
На всякий случай, поделитесь видом, тоже.
<?php if($yazilar) : ?>
<?php foreach ($yazilar as $dizi): ?>
<?php
$kisa_metin = mb_substr($dizi['text'],0,85);
echo'
<div class="col-md-8">
<div class="panel panel-info">
<div class="panel-heading">
<h3 class="panel-title">'.$dizi['title'].'</h3>
</div>
<div class="panel-body">
'.$kisa_metin.'...<br><small class="pull-right"><a href="'.base_url().'blog/'.$dizi['slug'].'"> Devamını Oku...</a></small>
</div>
</div>
</div> <br clear="both">'; ?>
<?php endforeach ?>
<div class="row">
<?php echo $sayfalama_linkleri; ?>
</div>
<?php endif; ?>
Примечание: Когда я изменяю «use_page_numbers'to правда, номера страниц являются правильными, но я теряю некоторые из моих данных. Некоторые из сообщений не отображаются. Помогите человеку, пожалуйста. Спасибо всем.