2010-12-15 71 views
0

J'ai créé une galerie d'images en utilisant la pagination par défaut de CodeIgniter. Les images proviennent de db et chaque page contient 16 images.Advance CodeIgniter pagination

Récemment, mon client m'a demandé de mettre 32 images pour chaque page autre que la première page. Cela signifie que sur la première page, il n'y a que 16 images et les autres pages viennent après avoir 32 images par page. Donc, je change un peu le code et j'obtiens le résultat comme il le demandait.

Mais le problème est survenu dans la barre de pagination. Quand j'étais en 2ème page, la pagination montre encore que je suis en 1ère page.

if ($this->uri->segment(3, 0) == 0){ 
    $config['per_page'] = 16; 
    }else{ 
    $config['per_page'] = 32; 
    } 
    $config['num_links'] = 1; 
    $this->pagination->initialize($config); 


    $query = $this->db->get('img', $config['per_page'], $this->uri->segment(3));//when i am in page 2 "segment(3)" will equal to 16 

Est-ce que leur autre bibliothèque de pagination alternative peut le faire? La page est à http://vintagepostersofceylon.com/posters/cinema/

Répondre

0

essayer de jouer avec le $config['uri_segment'] Essayez 4

Et si vous ne comprends toujours pas, il vous aidera si vous nous donnez l'URL.

Mise à jour: nouvelles infos

Je suis confus, ainsi que les raisons pour lesquelles il ne fonctionne pas. Essayez d'utiliser ceci:

if (((int)$this->uri->segment(3)) > 16) 
{ 
    $config['per_page'] = 32; 
} 
else 
{ 
    $config['per_page'] = 16; 
} 

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

ne fonctionne toujours pas. J'ai ajouté l'URL – Kombuwa

+0

Je ne peux pas voir l'URL que vous avez publiée. –