Witam,
Przerabiam ksiażke na temat programowania obiektowego i nie moge pojac kilku rzeczy:
Mamy klase class.PageNavigator.php :
Oto jej czesc :
<?php
public function __construct($pagename, $totalrecords, $recordsperpage, $recordoffset, $maxpagesshown = 4, $params = '')
$this->pagename = $pagename;
$this->recordsperpage = $recordsperpage;
$this->maxpagesshown = $maxpagesshown;
//juz zakodowane jako url
$this->params = $params;
//sprawdza czy recordoffset jest wielokrotnoscia recordsperpage
$this->checkRecordOffset($recordoffset, $recordsperpage) or
die($this->errorstring); $this->setTotalPages($totalrecords, $recordsperpage);
$this->calculateCurrentPage($recordoffset, $recordsperpage);
$this->createInactiveSpans();
$this->calculateCurrentStartPage();
$this->calculateCurrentEndPage();
}
private function checkRecordOffset($recordoffset, $recordsperpage) {
$bln = true;
if($recordoffset % $recordsperpage != 0) {
$this->errorstring = 'Błąd - nie jest wielokrotnościa liczby elementów na stronę.';
$bln = false;
}
}
private function setTotalPages($totalrecords, $recordsperpage) {
$this->totalpages = ceil($totalrecords / $recordsperpage); }
private function calculateCurrentPage($recordoffset, $recordsperpage) {
$this->currentpage = $recordoffset / $recordsperpage;
}
?>
W ksiażce metoda checkRecordOffset :
<?php
private function checkRecordOffset($recordoffset, $recordsperpage) {
$bln = true;
if($recordoffset % $recordsperpage != 0) {
$this->errorstring = 'Błąd - nie jest wielokrotnościa liczby elementów na stronę.';
$bln = false;
}
}
?>
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:
<?php
private function calculateCurrentPage($recordoffset, $recordsperpage) {
$this->currentpage = $recordoffset / $recordsperpage;
}
?>
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 ?