Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: stronnicowanie
Forum PHP.pl > Forum > Przedszkole
marcio
siemka chce zrobic stronnicowanie dla mojej prostej keisgi gosci ale cos nie wychodz mam taki kod wyswietlajacy ksiege
  1. <?php
  2. public function Pokaz_ksiege() {
  3.  
  4. if($db = mysql_connect($this->pasy['host'], $this->pasy['login'], $this->pasy['haslo'])) {
  5. mysql_select_db($this->pasy['baza']);
  6.  
  7. $zap = ('select nick,data,message from ksiega_gosci order by data desc');
  8.  
  9. $wynik = mysql_query($zap, $db) or die(mysql_error());
  10.  
  11. while($tab = mysql_fetch_assoc($wynik)) {
  12.  
  13. echo('<table border="1" width="100%" bgcolor="#4E4E68" align="center"><tr><td width="50%">Dodal: '.$tab['nick'].'</td><td width="50%">Dnia:'.$tab['data'].'</td></tr>
  14. <tr><td>'.$tab['message'].'</td></tr></table></form>');
  15. }
  16. }
  17. else {
  18.  return('Nie ma wpisow');
  19.  mysql_close($db);
  20. }
  21. }
  22. ?>

czy ktos moze mnie naprowadzic jak to powinno dzialac nie chce gotowego kodu bo sie nie naucze.Probowalem uzyc kodu kosmic oczywiscie zmienilem to co trzeba bylo ale mysql pokazywal jakis dziwny blad i nie dzielil na strony
kossa
Postępowanie ze stronicowaniem wygląda mniej więcej tak:

1. zliczasz ile masz rekordów w bazie które chcesz wyświetlić
2. liczbę rekordów dzielisz na ilość rekordów jaką chcesz pokazywać na pojedynczej stronie i wynik zaokrąglasz do góry aby jedna strona nie "usiekła"
3. ustalasz zmienną np. $od=0 i masz zapytanie: select * from tabela limit $od, 15; co da nam 15 rekordów na stronie od rekordu pierwszego
4. link do kolejnej strony musi przekazać do zmiennej $od żeby się zwiększyła np. $od=15; wówczas wyświetlisz 15 rekordów od 15 do 30 itd. przekazywać możesz jak chcesz, czy GET czy POST czy inaczej, to zależy od Ciebie

poza tym szukaj pod hasłem stronicowanie na forum w wyszukiwarce

Łukasz
marcio
ok dzieki i sorki ze przed zalozeniem tematu nie poszukalem zaraz napisze kod i dam tu na forum zobaczymy co wykludze biggrin.gif

P.S czy moge to polaczyc z funckja Pokaz_ksiege()__

  1. <?php
  2. public function stronnicowanie($od=0,$liczba=50) {
  3. if($db = mysql_connect($this->pasy['host'], $this->pasy['login'], $this->pasy['haslo'])) {
  4. mysql_select_db($this->pasy['baza']);
  5.  
  6.  $query = ("select * from ksiega_gosci");
  7.  $wynik = mysql_query($query, $db) or die(mysql_error());
  8.  $num = mysql_num_rows($wynik);
  9. $ile = ceil($num/50);
  10. $zap = ("select * from ksiega_gosci limit '.$od.','.$liczba.'"); // tu nie wiem czy ma byc ("select * form ksiega_gosci order by data desc limit '.$od.','.$liczba.'"); czy tak jak jest
  11.  $strona = $_GET['strona'];
  12.  $ris = mysql_query($zap, $db) or die(mysql_error);
  13.  
  14. while($tab = mysql_fetch_assoc($ris)) {
  15.  
  16. echo('<table border="1" width="100%" bgcolor="#4E4E68" align="center"><tr><td width="50%">Dodal: '.$tab['nick'].'</td><td width="50%">Dnia:'.$tab['data'].'</td></tr>
  17. <tr><td>'.$tab['message'].'</td></tr></table></form>');
  18. }
  19.  
  20. if(is_numeric($strona) && !empty($strona) && $strona > 0) {
  21.  
  22. echo("<a href=\"$_SERVER['PHP_SELF']?strona=".($strona-1).">Poprzednia</a>|");
  23.  }
  24. if(is_numeric($strona) && !empty($strona) && $strona < $ile) {
  25.  
  26. echo("<a href=\"$_SERVER['PHP_SELF']?strona=".($strona+1).">Nastepna</a>");
  27.  }
  28. }
  29. ?>

wykombinowalem cos takiego i nie wiem czy jest dobre oczywiscie bym to zamienil z funckja ktora podalem wyzej biggrin.gif
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.