Pager

 

Klasa Pager jak sama nazwa wskazuje służy do zarządzania stronicowaniem. Klasa pobiera aktualną stronę na której jesteśmy i na tej podstawie mówi nam, z jakiego zakresu pobrać mamy interesujące nas dane. Dodatkowo klasa generuje kod html będący reprezentacją linków do kolejnych stron. Możemy oczywiście sami stworzyć swój własny html. Od wersji 2.5 istnieje mozliwość zapamiętania parametrów wywołania strony.

Narazie napiszę tylko tyle. Więcej na temat klasy możecie dowiedzieć się na forum php.pl lub z artykułów. Klasa jest do pobrania tutaj.

Changelog

  • 2007-07-26 Pager 2.5
    • Brak kompatybilności wstecz przy niektórych metodach
    • Rozbicie metody Render() na dwie metody: Make() i Render()
    • Zapamiętywanie w linkach parametrów w wywołaniu strony
  • 2006-08-22 Pager 2.02
    • poprawa drobnego błędu przy wyświetlaniu x stron do przodu/tyłu
  • 2006-08-22 Pager 2.01
    • Jeśli drugi parametr wywołania konstruktora będzie zawierał ciąg #PAGE#, to link ten zostanie niezmieniony, czyli bedzie tak jak user podał, za wyjatkiem #PAGE#, które zostanie zamienione na numer strony. Przydatne chociażby do "nice urls".
    • * Metoda Render() może zwracać teraz tablicę pagera zamiast kodu html. Należy ustawic na true jej trzeci parametr.

 

Komentarze

 

2008-10-29 12:01:08 gość_Mike

 
Mam pytanie - w treści wywołania klasy, we fragmencie:
1
2
3
4
5
6
7
8
9
try{ 
    $pager = new Pager('idPagera'); 
    $pager->SetTotalRecords($recordsCount); 
    $pager->Make(true); 
    $pager->pageLink(true); 
    $pag = $pager->Render(); 
    $start = $pager->GetIndexRecordStart(); 
    $end = $pager->GetIndexRecordEnd(); 
}
jak mogę dołączyć link do klasy - chodzi mi o to, aby w moim przypadku link do nastepnej strony wyników wyglądał tak: ?lista_art&pageppid=2. Czyli jak dołączyć link z zewnątrz?

2008-10-29 12:13:35 nospor

 
1
2
3
<?php 
 $pager 
= new Pager('idPagera','?lista_art&pageppid=#PAGE#'); 
?>

2008-10-29 12:27:44 gość_Mike

 
To się nazywa błyskawiczna odpowiedź - dziękasy

2010-09-05 12:43:26 gość_marian

 
Jaka może być przyczyna odwrotnego zaznaczenia aktualnej strony? tzn. Gdy wywoluje stronę po raz pierwszy jako aktualną stronę zaznaczona jest strona ostatnia. Co może być przyczyną?

2010-09-05 14:27:01 Michał

 
Zapamiętywanie stanu w sesji dodaj $pager -> SetUseSession( false );

2010-09-05 15:09:58 gość_marian

 
To nie sesja. Problem tkwił w konflikcie nazw zmiennych. id strony pobierałem z url za pomocją parametru http://strona.pl/index.php?page=12

2011-08-06 09:35:23 gość_mirek

 
Do czego jest idPagera? Moim zdaniem jest to zbędne

2011-08-06 20:16:41 nospor

 
Jakbyś używał na stronie więcej pagerów niż jednego to byś zmienił zdanie

Dodaj komentarz

 

Dostępne bbcode: b, u, i, color, size, quote, img, url, list, il (tylko w list), code, php, css, html, sql, js