Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> paginacja stronicowanie [php][psql]
noobek21
post
Post #1





Grupa: Zarejestrowani
Postów: 13
Pomógł: 0
Dołączył: 28.09.2009

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


Próbuje napisać stronicowanie.
Oto kod:
  1.  
  2. $max_zapytanie = "SELECT * FROM ab;";
  3. $max_idzapytania = pg_query($max_zapytanie);
  4.  
  5.  
  6.  
  7. $subpage = $_GET['page'];
  8. $perPage = 10;
  9. if (!empty($_GET['subpage']) && (is_numeric($_GET['subpage'])))
  10. {
  11. $subpage = (int) $_GET['subpage'];
  12. }
  13. if ($subpage < 1)
  14. {
  15. $subpage = 1;
  16. }
  17. $start = ($subpage - 1) * $perPage;
  18. $zapytanie = 'SELECT * FROM ab ORDER BY imie DESC LIMIT '.$subpage.'*10;';
  19. $idzapytania = pg_query($zapytanie);
  20. if(pg_escape_string((!isset($_GET['id'])) or empty($_GET['id'])))
  21. {
  22. while ($wiersz = pg_fetch_array($idzapytania))
  23. {
  24.  
  25. echo $wiersz["imie"]."<br >";
  26.  
  27. }
  28. $prev = $subpage - 1;
  29. $next = $subpage + 1;
  30. $prevLink = 'index.php?page='.$prev;
  31. $nextLink = 'index.php?page='.$next;
  32. $ilosc_wierszy = pg_num_rows($max_idzapytania);
  33.  
  34. if($subpage > 0) {
  35. echo'<a style="text-decoration: none;" href="'.$prevLink.'">Back</a> ';
  36. $stron=ceil($ilosc_wierszy/$perPage);
  37. }
  38.  
  39. for($i=1; $i<=$stron; ++$i)
  40. {
  41. if($i==$subpage)
  42. echo $i;
  43. else
  44. echo '<a href="index.php?page='.$i.'">'.$i.' </a>';
  45. }
  46. if($subpage < $stron)
  47. echo ' <a href="'.$nextLink.'">Next</a>';
  48. }
  49.  
  50.  


Aktualnie wygląda to tak, że co zmienię stronę dodaje mi dodatkowe dziesięć rekordów (na pierwszej stronie 1*10; na drugiej stronie 2*10 itd.)
Myślę jak zrobić, aby był przedział na pierwszej stronie od 1 do 10; na drugiej od 10 do 20 itd....

Ten post edytował noobek21 28.06.2011, 22:18:42


--------------------
Tłumiki Warszawa
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 1)
magu112
post
Post #2





Grupa: Zarejestrowani
Postów: 47
Pomógł: 2
Dołączył: 22.07.2009

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


Cytat
LIMIT X, Y

czyli
wybierz Y rekordów zaczynając od X
Go to the top of the page
+Quote Post

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: 19.08.2025 - 21:59