Kod ponizej to chyba najpopularniejszy w internecie skrypt stronicowania.
<?php
define('ILOSC_WYNIKOW_NA_STRONIE', 5
);
$SQL = "SELECT SQL_CALC_FOUND_ROWS *
FROM moja_baza
ORDER BY date ASC
LIMIT ".mysql_escape_string((int
)$_GET['porcja']*ILOSC_WYNIKOW_NA_STRONIE
).",".ILOSC_WYNIKOW_NA_STRONIE
; // pobiera ILOSC_NA_STRONIE rekordów z bazy, sortując wg daty rosnąco, zaczynając od $_GET['porcja']*ILOSC_NA_STRONIE
/*Wyświetlanie wyników, przykładowo:*/
echo 'tytuł: '.$AFR['Title'].'<br />'; }
// w inny sposób pobieramy ilosc danych w bazie
$SQL = "SELECT FOUND_ROWS() as Ilosc";
//Teraz wypadało by wyświetlić jakąś nawigację
//jeśli nie jesteśmy na pierwszej stronie
if($_GET['porcja']>0){
//wyswietlamy link do poprzedniej strony
echo '<a href="?porcja='.($_GET['porcja']-1).'">Poprzednie</a> '; }
for($i = 0;$i<=floor($iloscWpisow/ILOSC_WYNIKOW_NA_STRONIE
);$i++){ echo '<a href="?porcja='.($i).'">[ '.($i+1).' ]</a> '; }
//jeśli nie jesteśmy na ostatniej stronie
if($_GET['porcja']<floor($iloscWpisow/ILOSC_WYNIKOW_NA_STRONIE)){
//wyświetlamy link do nastepnej strony
echo ' <a href="?porcja='.($_GET['porcja']+1).'">następne</a>'; }
?>
Jego efekt jest mniejwiecej taki:
poprzednie [1][2][3][4][5]6][7][8][9]
[10][11][12][13][14][15] nastepne.
Pytanie: Co wprowadzic w tym skrypcie zeby wyswietlał cos takiego:
poprzednie [1][2][3]...[9][
10][11].....[17][18][19] nastepne. gdzie 10 to strona aktywna