Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP][MYSQL] stronicowanie - problem z większymi wynikami
!*!
post 29.06.2008, 14:08:12
Post #1





Grupa: Zarejestrowani
Postów: 4 298
Pomógł: 447
Dołączył: 16.11.2006

Ostrzeżenie: (0%)
-----


  1. <?php
  2. if (isset($wynik)) { $_SESSION['wyszukaj'] = $_POST['wyszukaj'];}
  3.  
  4. function pages ($first, $red, $nrpages, $zap) {
  5. if($red > $nrpages ){
  6. $red = $red/$nrpages; 
  7. $ile = ceil($red); 
  8.  
  9.  
  10. if ($first!=0) echo("<a href=\"".$_SERVER['PHP_SELF']."?first=" . ($first-$nrpages) . "\" title=\"Poprzednie\"><<</a> "); 
  11.  
  12. for ($i=1;$i<=$ile;$i++) { 
  13. echo("<a href=\"".$_SERVER['PHP_SELF']."?first=" . ($i*$nrpages-$nrpages) . "\" title=\"" . ($i*$nrpages-($nrpages-1)) . "-" . ($i*$nrpages) ."\">");
  14.  
  15. if ( $red < 0 ) {if ($first==($i*$nrpages-$nrpages)) { 
  16. echo ("<b>" . $i . "</b></a> "); $akt=$i-1; } else { print ("" . $i . "</a> "); 
  17.  } 
  18. } 
  19.  
  20. else{
  21. if ($first==($i*$nrpages-$nrpages)) 
  22.  { 
  23. echo ("<b>" . $i . "</b></a> "); $akt=$i; } else { print ("" . $i . "</a> ");  
  24.  } 
  25. }
  26. } 
  27. if ($akt<$ile) echo ("<a href=\"".$_SERVER['PHP_SELF']."?first=" . ($first+$nrpages) . "\" title=\"Następne\">>></a>");
  28. }
  29. }
  30. ?>


Odpowiada to za stronicowanie które wygląda tak:

  1. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 >>


tylko że przy większej ilości stron trochę to nie praktyczne, chciałbym tak:

  1. 1 2 3 4 5 6 7 8 9 10 ... 22 >>


tylko nie wiem jak uciąć ten wynik


--------------------
Nie udzielam pomocy poprzez PW i nie mam GG.
Niektóre języki programowania, na przykład C# są znane z niezwykłej przenośności (kompatybilność ze wszystkimi wersjami Visty jest wiele warta).
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 25.07.2025 - 10:02