Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php]paginacja jako funkcja
trucksweb
post
Post #1





Grupa: Zarejestrowani
Postów: 1 199
Pomógł: 31
Dołączył: 22.03.2004
Skąd: Warszawa

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


napisalem sobie prosty skrypt paginacji danych, wszystko dziala jak kod jest w pliku w ktorym ma sie stronicowac tresc. jako ze planuje wiecej takich stron, chcialbym zrobic kod, ktory bedzie elastyczny- tzn. po deklaracji zmienniej z nazwa tabeli bedzie stronicowal inne strony, wiec przygotowalem sobie cos takiego- nazwa tabeli jest na stale, ale i tak juz cos nie dziala:

plik funkcje.php
  1. <?php
  2. //PAGINACJA WYNIKOW
  3. function paginacja() {
  4. if(isset($_GET['np'])) {
  5. $num_pages = $_GET['np'];
  6. }else {
  7. $query = "SELECT COUNT(*) FROM faktury ORDER BY id DESC";
  8. $result = mysql_query($query);
  9. $row = mysql_fetch_array($result, MYSQL_NUM);
  10. $num_records = $row[0];
  11.  
  12. if($num_records > $display) {
  13. $num_pages = ceil ($num_records/$display);
  14. }else {
  15. $num_pages =1;
  16. }
  17. }
  18.  
  19. if(isset($_GET['s'])) {
  20. $start = $_GET['s'];
  21. }else {
  22. $start = 0;
  23. }
  24.  
  25. }//koniec funkcji paginacja
  26.  
  27. function pokaz_paginacje() {
  28.  
  29. if($num_pages > 1) {
  30. $current_page = ($start/$display) + 1;
  31. if($current_page !=1) {
  32. echo ' <a href="faktury.php?s='.($start - $display).'&np='.$num_pages.'">Poprzednia </a> ';
  33. }
  34.  
  35. for($i=1; $i <= $num_pages; $i++) {
  36. if($i !=$current_page) {
  37. echo ' <a href="faktury.php?s='.(($display * ($i - 1))).'&np='.$num_pages.'"> '. $i . ' </a> ';
  38. }else{
  39. echo $i. ' ';
  40. }
  41. }
  42. if($current_page != $num_pages) {
  43. echo ' <a href="faktury.php?s='.($start + $display).'$np='.$num_pages.'">Nastepna</a> ';
  44.  
  45. }
  46. }
  47. }
  48. ?>



strona.php:
  1. <?php
  2. ..
  3. $display = 10;
  4. $start =1;
  5. paginacja();
  6.  
  7. tutaj select z: LIMIT $start, $display";
  8.  
  9. ..
  10. tutaj tworzenie tabeli i listowanie produktow
  11.  
  12. ..
  13. pokaz_paginacje();
  14.  
  15. ?>


niesttey taki zapis nie dziala


--------------------
Rozmawia dwóch dyrektorów:
- Jaki jest twój ideał sekretarki?
- 20-letnia dziewczyna z 30-letnim doświadczeniem.
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 Aktualny czas: 22.08.2025 - 05:36