Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: PageNavigator
Forum PHP.pl > Forum > PHP
Wolfie
Witam,

Przerabiam ksiażke na temat programowania obiektowego i nie moge pojac kilku rzeczy:

Mamy klase class.PageNavigator.php :

Oto jej czesc :

  1. <?php
  2. public function __construct($pagename, $totalrecords, $recordsperpage, $recordoffset, $maxpagesshown = 4, $params = '')
  3.            $this->pagename = $pagename;
  4.            $this->recordsperpage = $recordsperpage;
  5.            $this->maxpagesshown = $maxpagesshown;
  6.            //juz zakodowane jako url
  7.            $this->params = $params;
  8.            //sprawdza czy recordoffset jest wielokrotnoscia recordsperpage
  9.            $this->checkRecordOffset($recordoffset, $recordsperpage) or die($this->errorstring);
  10.            $this->setTotalPages($totalrecords, $recordsperpage);
  11.            $this->calculateCurrentPage($recordoffset, $recordsperpage);
  12.            $this->createInactiveSpans();
  13.            $this->calculateCurrentStartPage();
  14.            $this->calculateCurrentEndPage();
  15.        }
  16.        
  17.        private function checkRecordOffset($recordoffset, $recordsperpage) {
  18.            $bln = true;
  19.            if($recordoffset % $recordsperpage != 0) {
  20.                $this->errorstring = 'Błąd - nie jest wielokrotnościa liczby elementów na stronę.';
  21.                $bln = false;
  22.            }
  23.        }
  24.        
  25.        private function setTotalPages($totalrecords, $recordsperpage) {
  26.            $this->totalpages = ceil($totalrecords / $recordsperpage);
  27.        }
  28.        
  29.        private function calculateCurrentPage($recordoffset, $recordsperpage) {
  30.            $this->currentpage = $recordoffset / $recordsperpage;
  31.        }
  32. ?>


W ksiażce metoda checkRecordOffset :

  1. <?php
  2. private function checkRecordOffset($recordoffset, $recordsperpage) {
  3.            $bln = true;
  4.            if($recordoffset % $recordsperpage != 0) {
  5.                $this->errorstring = 'Błąd - nie jest wielokrotnościa liczby elementów na stronę.';
  6.                $bln = false;
  7.            }
  8.        }
  9. ?>


Jest skomentowana w ten sposob :

"Zmienna $recordoffset przekazywna do konstruktora informuje nawigator o numerze aktualnie wyswietlanej strony"

No i tutaj pierwsza sprawa ktorej nie rozumiem, po pierwsze jak dziala metoda checkRecordOffset? Intuicyjnie mniej wiecej to rozumiem ale nie potrafie tego logicznie sobie tytlumaczyc.

No i kolejna rzecz metoda calculateCurrentPage:

  1. <?php
  2. private function calculateCurrentPage($recordoffset, $recordsperpage) {
  3.            $this->currentpage = $recordoffset / $recordsperpage;
  4.        }
  5. ?>


Skoro zmienna $recordoffset informuje o numerze aktualnie wyswietlanej strony to po co obliczac zmienna $currentpage (aktualnie wyswietlana strona) ktora jest wynikiem dzielenia $recordoffset (podobno numer aktualnie wyswietlanej strony) i $recordsperpage ?
MateuszS
To chyba nie ten dział. Tu przedszkole ;P
Wolfie
To sa podstawowe obliczenia matematyczne wiec chyba nadaje sie do przedszkola, jesli nie prosze o przeniesienie.......
Wicepsik
Nie napisałeś jaki błąd Ci wyskakuje... Czy w ogóle nic się nie wyświetla?
Wolfie
Błędu nie ma, chodzi o wyjasnienie, nie odpalalem tego kodu bo najpierw chce zrozumiec jego strukture, zreszta wiem jak wyglada dzialanie z opisu ksiazki, chodzi o niejasnosci, zadalem 2 pytania w pierwszym poscie......
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.