Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: stronicowanie
Forum PHP.pl > Forum > Przedszkole
Gość_stefan
Witam na stronie mam proste stronnicowanie wygląda ono mniej wiecej tak

  1. <?php
  2.  
  3. $start=$site*10;
  4.  
  5. $licz = mysql_uery ("SELECT * FROM `costam`");
  6.  
  7. $sql = mysql_query("SELECT * FROM `costam` ORDER by `id` DESC LIMIT $start,10");
  8.  
  9. //tutaj zwracamy 10 najnowszych rekordów
  10.  
  11. $ile = mysql_num_rows($licz); //liczymy ile jest rekordów
  12.  
  13. echo "kolejne strony:";
  14. for($a=0;$a<($ile/10);$a++)
  15. echo "<a href=index.php?site=$a>$a</a>";
  16.  
  17. ?>


No i wszystko jest ok tylko mam problem polegający na tym że w pewnym momencie ciąg podstron robi się za duży. Chciałbym zrobić aby np co 10 podstrone wstawiało mi <br /> bo w tej chwili gdy mam np. 30 podstron to strona się rozwala
nospor
a tu masz dośc ciekawą klasę rozwiązującą Twój problem biggrin.gif :
http://forum.php.pl/index.php?showtopic=35...533;entry201530

no a jesli cie sie ona nie spodoba to:
  1. <?php
  2.  
  3. //....
  4. for($a=0;$a<($ile/10);$a++)
  5. {
  6. echo "<a href=index.php?site=$a>$a</a>";
  7. if ($a % 10 == 9) echo '<br />';
  8. }
  9.  
  10. ?>
Gość_stefan
to nie moj etap jeszcze... mi chodzi jedynie o złamanie lini podstron
nospor
No przecież podalem rozwiązanie. Lamie linie w poprzednim poscie
Gość_stefan
dzięki działa, sory ze dwa posty ale zgubiłem hasło do swojego konta nie mogę go odzyskac bo opcja odzyskiwania nie działa i admin nie chce mi zmienić recznie hasła bo się nie odzywa
Gość_stefan
gdyby ktoś z adminów zmienił mi hasło byłbym wdzięczny tylko tutaj można pisać niezarejestrowanym pisałem na maila admina forum bez odewu, nie chce rejestrować nowego konta. moje konto to stefan_precz
nospor
Napisaleś że to jeszcze nie Twój etap. Hmm, ty nie musisz kojarzyć co zawiera wnętrze klasy, ty musisz ją tylko wykorzystać.
W twoim przypadku byłby to include na pliku z klasą a nasepnie kod (który zresztą jest podany w linku ogolnie)

  1. <?php
  2.  
  3. //pobranie liczby wszystkich rekordów
  4. $sql = 'select count(*) from `costam`';
  5. $row = mysql_fetch_array($result);
  6. $recordsCount = $row[0];//pobranie liczby rekordów
  7.  
  8. //inicjacja pager'a
  9. $pager = new Pager('idPagera');
  10. $pager->setRecordsCount($recordsCount);//ustawienie liczby rekordów
  11.  
  12. //wygenerowanie pagera i zapamietanie go w zmiennej w celu 
  13. //pozniejszego wyswietlenia
  14. $renderPager = $pager->render();
  15.  
  16. $start = $pager->getStartRecord();//pobranie indexu rekordu początkowego
  17. $end = $pager->getEndRecord();//pobranie indexu rekordu koncowego
  18.  
  19. //zapytanie z uwzglenieniem stronicowania
  20. $sql = 'select * from `costam` ORDER by `id` DESC limit '.$start.','.($end - $start + 1); 
  21.  
  22.    //...pobranie wyników i ich wyswietlenie
  23.  
  24.    echo $renderPager; //wyswietlenie pager'a
  25.  
  26. ?>


pozdro smile.gif

ps: podaj jakiś kontakt do siebie, to może jak admin sie pojawi to ci zmieni haslo i napisze co i jak
Alchemy_A.R.T.
Kurde - a nie lepiej w twoim wyjsciowym przykladzie oddzielic kolejne liczby spacjami?? bedzie bardziej przejrzyscie no i sie zlamie kiedy bedzie trzeba. Czyli zmieniasz:
  1. <? echo "<a href=index.php?site=$a>$a</a>"; ?>

na
  1. <? echo " <a href=index.php?site=$a>$a</a>"; ?>

i po sprawie
Gość_stefan
gry@dyk.pl

z góry dzięki za pomoc
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.