PDA

Volledige versie bekijken : PHP Navigatie


Ooh_zo
%Europe/Berlin %550 %2009, 14:13
Hallo luitjes,

Op een site van me heb ik een automatische paginanavigatie.. die gebruik maakt van de for functie..
De navigatie is vergelijkbaar met die als in een ander topic op dit forum:
http://www.flashfocus.nl/forum/showpost.php?p=371785&postcount=15
<?php
## Paginanummers ##
echo '<a';
if ($curr_p != 1) {
echo ' href="?page=', $curr_p + 1, '"'; // maak een knop voor vorige pagina, als de huidige pagina niet de eerste pagina is
}
echo '>Vorige &laquo;</a>';
for ($i = 1; $i <= $pp) {
echo '<a href="?page=', $i;
if ($i == $curr_p) {
echo ' class="current"'; // geeft een klasse aan de huidige paginanummer, kan met CSS een andere stijl krijgen
}
echo '>', $i, '</a>';
}
?>


Maar inmiddels komen er steeds meer pagina's bij wat resulteerd in een lange navigatielijst met alle paginanummers! En 30 pagina's of meer is zeker niet de bedoeling, liever iets van max. 10.

Huidige situatie:
‹ Eerste ‹ Vorige 1 - 2 - 3 - 4 - 5 - 6 - 7 - 8 - 9 - 10 - 11 - 12 - 13 - 14 - 15 - 16 - 17 Volgende › Laatste ›

Gewenste situatie 1:
‹ Eerste ‹ Vorige 1 - 2 - 3 - 4 ... 8 - 9 - 10 ... 14 - 15 - 16 - 17 Volgende › Laatste ›

OF .. Gewenste situatie 2:
‹ Eerste ‹ Vorige 1 - 2 - 3 - 4 ... 14 - 15 - 16 - 17 Volgende › Laatste ›


..Bij deze de vraag of iemand me in de juiste richting kan wijzen? (Er vanuit gaande dat mijn navigatie ongeveer dezelfde code heeft als die in de post hierboven) Of misschien zelfs een werkend voorbeeld heeft?

Koen!
%Europe/Berlin %669 %2009, 17:04
Ik snap wat je wil bereiken.. maar ik snap je vraag niet helemaal, aangezien je 'm zelf voor een groot deel al beantwoordt. :) Je pakt de eerste paar pagina's, de huidige pagina, en de laatste paar pagina's, en alleen die echo je. Is in principe op te lossen met wat extra if-jes in je bestaande code. :)

CreaTive1990
%Europe/Berlin %331 %2009, 08:57
"SELECT * FROM tabel_navigatie ORDER BY id DESC LIMIT ".$curr_p.", 4"In bovenstaand voorbeeld worden de eerse 4 waardes vanaf de current page uitgelezen, denk dat je daar wel iets mee moet kunnen doen?