Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Paginacja i problemy z kropkowaniem
Forum PHP.pl > Forum > PHP
ArekBe
Witam!

Mam skrypcik paginacji, który wykorzystywałem w wielu moich projektach, lecz nadszedł taki czas, w którym ten skrypt już nie 'wyrabia'. Chodzi o to, że nie mogę uporać się z kropkowaniem. Czyli skrypt aktualnie pokazuję tak: << 1 2 3 4 5 6 7 8 9 10 >> a chcę, aby przykładowo pokazywał tak: << 1 2 3 ... 7 8 9 ... 13 14 15 >>. Ma ktoś pomysł na przerobienie tego skryptu? Wiem, jest masę takich rzeczy w necie, ściągnąłem masę przykładów, lecz żadnego nie mogę zgrać z moim, a na tym by mi bardzo zależało. Skrypt wygląda tak:
  1. if ($liczba_wpisow > $na_stronie) {
  2. $poprzednia = $strona - 1;
  3. $nastepna = $strona + 1;
  4. if ($poprzednia > 0) { echo '<a href="?page='.$poprzednia.'" title="Poprzednia strona">&laquo;</a>'; }
  5. list($ile)=mysql_fetch_row(mysql_query("SELECT count(*) FROM `news`"));
  6. $liczba_stron = $ile / $na_stronie;
  7. $liczba_stron = ceil($liczba_stron);
  8. for ($v = 1; $v <= $liczba_stron; $v++) {
  9. if ($liczba_stron == 1) {
  10. echo " $v";
  11. } elseif ($v == $strona) { echo '<a href="?page='.$v.'" title="Strona '.$v.'" style="text-decoration:none">'.$v.'</a>'; }
  12. else { echo '<a href="?page='.$v.'" title="Strona '.$v.'">'.$v.'</a>'; }
  13. }
  14. if ($nastepna <= $liczba_stron) { echo '<a href="?page='.$nastepna.'" title="Następna strona">&raquo;</a>'; }
  15. }


Jeżeli ktoś ma jakiś pomysł to byłbym niezmiernie wdzięczny!
Z góry dziękuję i pozdrawiam,
Arek!
kujol
@edit:

Powinno działaćwink.gif
Wyświetli gdy ilość stron jest większa niż 3:

Poprzednia [1] [2] ... [8] [9] Następna

Kod
$script_name = $_SERVER['SCRIPT_NAME'];

echo "<a href=$script_name?strona=$back&z=$nazwa1 > Poprzednia </a>";

If($ilosc_stron >= 3)
{
for( $numerki1 = 1; $numerki1 <= 2; $numerki1++ )
echo "<a href=$script_name?strona=$numerki1&z=$nazwa1> [$numerki1] </a>";
echo "...";
for( $numerki2 = 5; $numerki2 <= $ilosc_stron; $numerki2++ )
echo "<a href=$script_name?strona=$numerki2&z=$nazwa1> [$numerki2] </a>";
}
else
{
for( $numerki = 1; $numerki <= $ilosc_stron; $numerki++ )
echo "<a href=$script_name?strona=$numerki&z=$nazwa1> [$numerki] </a>";
}


echo "<a href=$script_name?strona=$next&z=$nazwa1> Następna </a>";


Tylko pozmieniaj na swoje.
ArekBe
Śmiga, super, dzięki wielkie! smile.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.