Das geht ganz einfach mit SQL. Einfach immer das Limit 9 setzen und durch die aktuelle Seite den Offset für eine SQL Query errechnen.
Ich habe hier noch eine PHP Klasse, die ich ab und zu nutze.
1. Parameter: 9
2. Parameter: Gesamtzahl aller Rows
3. Parameter: Aktuelle Seite (z.b. durch $_GET übergeben)
Danach einfach die Methode getPageInfo aufrufen und du kannst dir damit die Pagination generieren.
PHP Code:
class Paginator
{
private $totalPages;
private $page;
private $limit;
/**
* @param int $entriesPerPage How many items should be displayed
* @param int $count How many items are there?
* @param int $page Current page
*/
public function __construct($entriesPerPage, $count, $page)
{
$this->limit = (int) $entriesPerPage;
$this->page = (int) $page;
$this->totalPages = ceil((int) $count/$this->limit);
}
/**
* Returns an array with all information
*
* @return array
*/
public function getPageInfo()
{
return array(
'totalPages' => $this->totalPages,
'currentPage' => $this->page,
'limit' => $this->limit,
'offset' => $this->calculateOffset(),
);
}
private function calculateOffset()
{
return ($this->page - 1) * $this->limit;
}
}