Beste mensen,

na wat zoek en puzzel werk heb ik een goed paging systeem gevonden om door een fotoalbum te bladeren.
Nu geeft dit systeem echter als er bijvoorbeeld meer dan 10 pagina's getoond moeten worden (zeg maar 13) het volgende als resultaat:
[First Page][Prev][1][2][3][4][5][6][7][8][9][10][11][12][13][Next][Last Page].

Nu wil ik echter dat als ik op bijvoorbeeld pagina 7 sta (of in ieder geval verder dan pagina 2 ben), ik het volgende zie:
[First Page][Prev][3][4][5][6][7][8][9][10][11][12][Next][Last Page].

Weet iemand hoe ik dat toe kan voegen aan dit script, of weet iemand een script waarbij dat gebeurt?

Dit is het huidige script:

[code]

<?php

$pageNum = 1;
if (empty($page)){
$page=1;
}
else{
$page = (int) $page;
}

if(isset($_GET['page']))
{
$pageNum = $_GET['page'];
}

if(!isset($_GET['category_id'])){

}
else{
$id = (int) $_GET['category_id'];
}

$offset = ($pageNum - 1) * $rowsPerPage;



$query = "SELECT id FROM fotos WHERE session_id='$id' LIMIT $offset, $rowsPerPage";
$result = mysql_query($query) or die('Error, query failed');




// how many rows we have in database
$query = "SELECT COUNT(id) AS numrows FROM fotos WHERE session_id='$id'";
$result = mysql_query($query) or die('Error, query failed');
$row = mysql_fetch_array($result, MYSQL_ASSOC);
$numrows = $row['numrows'];

// how many pages we have when using paging?
$maxPage = ceil($numrows/$rowsPerPage);
$offset_prev = (($pageNum - 1) * $rowsPerPage)- $rowsPerPage;
$offset_next = (($pageNum + 1) * $rowsPerPage)- $rowsPerPage;



// print the link to access each page
$self = $_SERVER['PHP_SELF'];
$nav = '';
for($page = 1; $page <= $maxPage; $page++)
{
if ($page == $pageNum)
{
$nav .= " $page "; // no need to create a link to current page
}
else
{
$offset_nav = ($page * $rowsPerPage) - $rowsPerPage;
$nav .= " <a href=\"$self?page=$page&category_id=$id&offset=$offset_nav\">$page</a> ";
}
}

// creating previous and next link
// plus the link to go straight to
// the first and last page

if ($pageNum > 1)
{
$page = $pageNum - 1;
$prev = " <a href=\"$self?page=$page&category_id=$id&offset=$offset_prev\">[Prev]</a> ";

$first = " <a href=\"$self?page=1&category_id=$id&offset=0\">[First Page]</a> ";
}
else
{
$prev = '&nbsp;'; // we're on page one, don't print previous link
$first = '&nbsp;'; // nor the first page link
}

if ($pageNum < $maxPage)
{
$offset_max = ($maxPage * $rowsPerPage) - $rowsPerPage;
$page = $pageNum + 1;
$next = " <a href=\"$self?page=$page&category_id=$id&offset=$offset_next\">[Next]</a> ";

$last = " <a href=\"$self?page=$maxPage&category_id=$id&offset=$offset_max\">[Last Page]</a> ";
}
else
{
$next = '&nbsp;'; // we're on the last page, don't print next link
$last = '&nbsp;'; // nor the last page link
}

// print the navigation link
echo $first . $prev . $nav . $next . $last;


// and close the database connection
include '../library/closedb.php';
?>

Reageren