Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Problem ze stronicowaniem
lobopol
post
Post #1





Grupa: Zarejestrowani
Postów: 1 729
Pomógł: 346
Dołączył: 4.04.2009

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


Od wczoraj męczę się nad zrobieniem prostego stronicowania. Celem moim jest wyświetlanie stron w formie:
łącznie stron = 9:
|<< poprzednia 1 2 3 4 5 następna >>| tu wybrana strona 3 link nieaktywny (nieaktywny link dla ułatwienia oznaczam pogrubieniem+podkreśleniem)
|<< poprzednia 1 2 3 4 5 6 7 8 9 następna >>| tu wybrana strona 3
|<< poprzednia 1 2 3 4 5 6 7 8 9 następna >>| tu wybrana strona 6
|<< poprzednia 1 2 3 4 5 następna >>| tu wybrana strona 1
|<< poprzednia 1 2 3 4 5 6 7 8 9 następna >>|

stron > 10
|<< poprzednia 2 3 4 5 6 7 8 9 10 11 następna >>| tu wybrana strona 6
|<< poprzednia 3 4 5 6 7 8 9 10 11 12 następna >>| tu wybrana strona 7
|<< poprzednia 5 6 7 8 9 10 11 12 13 14 następna >>| tu wybrana strona 9

stron = 15
|<< poprzednia 1 2 3 4 5 6 7 8 9 10 następna >>| tu wybrana strona 4
|<< poprzednia 3 4 5 6 7 8 9 10 11 12 następna >>| tu wybrana strona 7
|<< poprzednia 5 6 7 8 9 10 11 12 13 14 następna >>| tu wybrana strona 9
|<< poprzednia 6 7 8 9 10 11 12 13 14 15 następna >>| tu wybrana strona 14
|<< poprzednia 6 7 8 9 10 11 12 13 14 15 następna >>| tu wybrana strona 15

Wiem, że najprościej byłoby użyć klasy nospora, ale ona jest gigantyczna i jednak wolałbym rozwiązanie które łatwiej by było ogarnąć .
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
john_doe
post
Post #2





Grupa: Zarejestrowani
Postów: 873
Pomógł: 25
Dołączył: 24.07.2005

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


obadaj sobie takie zapytanie

  1. $SELECT_NEWS = "SELECT SQL_CALC_FOUND_ROWS *
  2. FROM tabela
  3. LIMIT " . mysql_escape_string((int)$_GET['page']*ILOSC_WYNIKOW_NA_STRONIE).",".ILOSC_WYNIKOW_NA_STRONIE;


potem na stronie

  1.  
  2. define('ILOSC_WYNIKOW_NA_STRONIE', 4);
  3.  
  4. $resultPager = connect( $SELECT_COUNT_ROWS ); // łączysz się i pytasz bazę ile zwraca wyników zapytanie które wykonujesz
  5.  
  6. $returnedRecords = mysql_result( $resultPager, 0 );
  7.  
  8. if( $_GET['page'] > 0 )
  9. {
  10. //print previous page link
  11. print '<a href="?page='.( $_GET['page'] - 1 ).'">Poprzednia</a> ';
  12. }
  13.  
  14. for( $i = 0 ; $i < ceil( $returnedRecords / ILOSC_WYNIKOW_NA_STRONIE ) ; $i++ )
  15. {
  16. if( $i == $_GET['page'] )
  17. {
  18. print '<a href="?page='.( $i ).'"><b>[ '.( $i + 1 ).' ]</b></a> ';
  19. }else print '<a href="?page='.( $i ).'">[ '.( $i + 1 ).' ]</a> ';
  20. }
  21. //if we aren`t on the last page
  22. if( $_GET['page'] + 1 < ceil( ( $returnedRecords / ILOSC_WYNIKOW_NA_STRONIE ) ) )
  23. {
  24. //print next page link
  25. print '<a href="?page='.( $_GET['page'] + 1 ).'">Następna</a>';
  26. }
  27.  


powinno Ci to pomóc. 100% działa
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 15.10.2025 - 22:24