Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]Pomoc w napisaniu paginacji
noxx
post 12.12.2014, 03:21:38
Post #1





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 21.12.2012

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


Pisze prosty portal z filmami z youtube i mam problem z paginacją.
Nie mam pojęcia jak odnieść się do poszczególnych rekordów w bazie tak aby na stronie 2 wyświetlane były wyświetlane 3 kolejne rekordy w bazie.


  1. $iloscfilmowzapytanie = mysql_query("SELECT count(*) as total from filmy");
  2. $iloscfilmow = mysql_fetch_assoc($iloscfilmowzapytanie);
  3. echo 'ilosc filmow łączna: '.$iloscfilmow['total'].'<br><br><br>';
  4.  
  5. $nastronie = 3;
  6.  
  7. $iloscstron = ceil($iloscfilmow['total'] / $nastronie);
  8.  
  9.  
  10.  
  11.  
  12. $query = "SELECT * FROM filmy ORDER BY `filmy`.`id` DESC";
  13. $result = mysql_query($query) or die (mysql_error());
  14.  
  15.  
  16.  
  17. while($row = mysql_fetch_array($result)){
  18.  
  19. echo '<br>'.$row['id'].'';
  20. }
Go to the top of the page
+Quote Post
nospor
post 12.12.2014, 08:04:23
Post #2





Grupa: Moderatorzy
Postów: 36 477
Pomógł: 6301
Dołączył: 27.12.2004




Jest tyle w necie i na forum skryptow paginacji, ze to trzeba byc szczegolnie leniwym by nie znaleźć jak sie robi stronicowanie....

Musisz użyć LIMIT w zapytaniu. Masz to podane w każdym lepszym skrypcie stronicowania dostepnym w necie za darmo po polsku


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
SaMi
post 12.12.2014, 11:23:54
Post #3





Grupa: Zarejestrowani
Postów: 173
Pomógł: 14
Dołączył: 27.03.2004
Skąd: Białystok

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


najprościej tak:

$limit = 10; //ilość wyników na stronie
$nr_podstrony = $_GET['strona']; //nr aktualnej podstrony

  1. SELECT * FROM filmy WHERE STATUS=1 ORDER BY id DESC LIMIT $limit OFFSET (($nr_podstrony-1) * $limit)




--------------------
Zapraszam na spływy kajakowe rzekami podlasia www.splywy-kajakiem.pl
Go to the top of the page
+Quote Post
noxx
post 29.12.2014, 02:54:59
Post #4





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 21.12.2012

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


  1. OFFSET


Tego mi brakowało smile.gif dzięki wielkie.

Chciałbym zrobić paginacje bardziej zaawansowaną a nie wiem kompletnie jak się za to zabrać. Na chwilę obecną wypisuje mi wszystkie strony od początku do końca a chciałbym żeby to ładniej wyglądało w takiej formie: 1...... 10 11 12 [13] 14 15 16 .... 999(ostatnia)

  1. <?php
  2.  
  3.  
  4. $result=mysql_query("SELECT count(*) as total from filmy");
  5. $data=mysql_fetch_assoc($result);
  6. $podbicie = 1;
  7. $iloscstron = $data['total'] / $limit;
  8.  
  9.  
  10.  
  11. while($podbicie <= ceil($iloscstron)){
  12. echo '<a href="?strona='.$podbicie.'">'.$podbicie.'</a>';
  13. $podbicie++;
  14. }
  15.  
  16.  
  17.  
  18.  
  19. mysql_close($link);
  20.  
  21. ?>
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 Wersja Lo-Fi Aktualny czas: 10.06.2024 - 09:02