Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Numerowanie stron
Forum PHP.pl > Forum > PHP
bigus
Witam.Szukał na forum ale nie znalazłem jednoznacznej odpowiedzi wiec proszę o pomoc.

Mam galerię która ma jest podzielona na strony. jest limit obrazków na stronie

i tym momencie jest tak np:

<< 1 2 3 >> >>-to są znaki do następnej strony , jak zrobić że jak będę miał dużo tych stron to wyświetlało się coś takiego << 1 2 3 ... 10 11 12 >> i np żeby dodać jakieś znaki żeby można iść do początku i do końca stron. np << < 1 2 3 ... 10 11 12 > >>. Poniżej podaje kod który mam.Trochę się z tym już męczę więc dlatego piszę

  1. <?php
  2. $database->setQuery("SELECT count(*) "
  3. . " FROM #__gallery As a, #__gallery_catg "
  4. . " AS ca WHERE a.catid=ca.cid "
  5. . " AND a.published=1 "
  6. . " AND a.approved=1 "
  7. . " AND ca.published=1 "
  8. . " AND ca.access<=$gid ");
  9. $count = $database->loadResult();
  10. $gesamtseiten = floor($count / $ad_perpage);
  11. $seitenrest = $count % $ad_perpage;
  12.  
  13.  
  14.  
  15. if ($seitenrest > 0) {
  16. $gesamtseiten++;
  17. }
  18. if (isset($startpage)) {
  19. if ($startpage > $gesamtseiten) {
  20. $startpage = $gesamtseiten;
  21. } else if ($startpage < 1) {
  22. $startpage = 1;
  23. }
  24. } else {
  25. $startpage = 1;
  26. }
  27.  
  28. $seiterueck = $startpage - 1;
  29. if ($seiterueck > 0) {
  30. echo "<a href='" . sefRelToAbs("$dgurl&func=cid=$cid&startpage=$seiterueck") . "'><strong>&laquo;</strong></a> ";
  31. }
  32. for ($i = 1; $i <= $gesamtseiten; $i++) {
  33. if ($i == $startpage) {
  34. echo "$i ";
  35. } else {
  36. echo "<a href='" . sefRelToAbs("$dgurl&func=cid=$cid&startpage=$i") . "'><strong>$i</strong></a> ";
  37. }
  38. }
  39. $seitevor = $startpage + 1;
  40.  
  41. if ($seitevor <= $gesamtseiten) {
  42. echo "<a href='" . sefRelToAbs("$dgurl&func=cid=$cid&startpage=$seitevor") . "'><strong>&raquo;</strong></a> ";
  43. }
  44. $start = ($startpage - 1) * $ad_perpage;
  45. ?>
nospor
Cytat
Szukał na forum ale nie znalazłem jednoznacznej odpowiedzi wiec proszę o pomoc.

hmmm, a pod jakim haslem szukales? bo na pewno nie pod stronicowanie tongue.gif
bigus
tak pod takim znalazłem to Temat: Pager stronicowanie

ale nie wiem jak to dostosować, gdybym umiał to bym nie pisał
nospor
Cytat
gdybym umiał to bym nie pisał

Widzisz, sek w tym ze wczesniej napisales ze nic nie znalazles, a nie ze znalazles i nie umiesz uzyc...
Pozatym pod haslem stronicowanie znajduje sie wiecej kodow, niz tylko moj.

Tu masz pod moj kod:
  1. <?php
  2. require_once('Pager.class.php');
  3.  
  4. $database->setQuery("SELECT count(*) "
  5. . " FROM #__gallery As a, #__gallery_catg "
  6. . " AS ca WHERE a.catid=ca.cid "
  7. . " AND a.published=1 "
  8. . " AND a.approved=1 "
  9. . " AND ca.published=1 "
  10. . " AND ca.access<=$gid ");
  11. $count = $database->loadResult();
  12.  
  13. $pager = new Pager('idPagera');
  14. $pager->SetTotalRecords($count);
  15. $pag = $pager->Render(true);
  16. $start = $pager->GetIndexRecordStart();
  17. $end = $pager->GetIndexRecordEnd();
  18.  
  19. //zapytanie z uwzglenieniem stronicowania
  20. $database->setQuery("SELECT * "
  21. . " FROM #__gallery As a, #__gallery_catg "
  22. . " AS ca WHERE a.catid=ca.cid "
  23. . " AND a.published=1 "
  24. . " AND a.approved=1 "
  25. . " AND ca.published=1 "
  26. . " AND ca.access<=$gid limit $start ,".($end - $start + 1));
  27.  
  28. //...pobranie wyników i ich wyswietlenie
  29.  
  30. echo $pag;//wyswietlenie pager'a
  31. ?>
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.