Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Stronicowanie, Podział na strony
mith
post
Post #1





Grupa: Zarejestrowani
Postów: 57
Pomógł: 0
Dołączył: 14.04.2006

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


Witam
Mam mały problem mianowicie jak można przerobić ten skrypt tak aby był możliwy podział na strony wraz z możliwością wyboru strony np.:
<< < 1 2 3 [4] 5 6 7 > >>
I żeby na stronie było wyświetlane np. tylko 15 wierszy tej tabelki.

Dzięki z góry.

  1. <?
  2. include('db.php');
  3.  
  4. $result = mysql_query('SELECT * FROM tabela ORDER BY nazwa');
  5. if ($row = mysql_fetch_array($result)) {
  6.  
  7. print('<table border="1" width="100%" cellspacing="0" cellpadding="0" style="border-collapse: collapse" bordercolor="#F3F3F3">
  8. <tr><td><p align="left"><b>Nazwa</b></td>
  9. </tr><tr>
  10. ');
  11.  
  12. do {
  13.  
  14. print ('<td>'.$row["nazwa"].'</font></td></tr>
  15. ');
  16.  
  17. } while ($row = mysql_fetch_array($result));
  18. print('</table>');
  19. } else {
  20. print "Błąd: Nie odnaleziono rekordów.";
  21. }
  22. ?>


PS: Wiem że na forum dużo tego jest ale mi jest potrzebny akurat ten skrypt smile.gif
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 14)
Master Miko
post
Post #2





Grupa: Zarejestrowani
Postów: 530
Pomógł: 0
Dołączył: 15.01.2005
Skąd: Warszawa

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


Było setki tysięcy razy!
Poszukaj w google, albo popatrz w to:
http://phpedia.pl/wiki/Stronicowanie
aby zmodyfikować swój kod (będzie to bardzo łatwe)

Albo odwrotnie.. zmodyfikuj kod na php.wiki swoimi danymi laugh.gif




by php.wiki, zmodyfikowany dla Ciebie... nie ma tylko intrukcji warunkowej czy istnieją jakieklowiek rekordy.

  1. <?php
  2. define('ILOSC_WYNIKOW_NA_STRONIE', 5);
  3.  
  4. include('db.php'); // połączenie z bazą itp
  5.  
  6. $SQL = "SELECT SQL_CALC_FOUND_ROWS * 
  7.        FROM tabela 
  8.        ORDER BY nazwa ASC 
  9.        LIMIT ".mysql_escape_string((int)$_GET['porcja']*ILOSC_WYNIKOW_NA_STRONIE).",".ILOSC_WYNIKOW_NA_STRONIE;
  10. // pobiera ILOSC_NA_STRONIE rekordów z bazy, sortując wg daty rosnąco, zaczynając 
    od $_GET['porcja']*ILOSC_NA_STRONIE
  11. $RES = mysql_query($SQL); // wykonujemy zapytanie
  12.  
  13. print('<table border="1" width="100%" cellspacing="0" cellpadding="0" style="border-collapse: collapse" bordercolor="#F3F3F3">
  14. <tr><td><p align="left"><b>Nazwa</b></td>
  15. </tr><tr>
  16. ');
  17.  
  18. while($row = mysql_fetch_assoc($RES)){
  19.    /*Wyswietlanie wyników, przykładowo:*/
  20. print ('<td>'.$row["nazwa"].'</font></td></tr>
  21. ');
  22. }
  23.  
  24. print('</table>');
  25.  
  26. // w inny sposób pobieramy ilosc danych w bazie
  27. $SQL = "SELECT FOUND_ROWS() as Ilosc";
  28. $RES= mysql_query($SQL);
  29. list($iloscWpisow) = mysql_fetch_row($RES);
  30.  
  31. //Teraz wypadało by wyswietlic jakąc nawigację 
  32.  
  33. //jesli nie jestesmy na pierwszej stronie
  34. if($_GET['porcja']>0){ 
  35.     //wyswietlamy link do poprzedniej strony
  36.    echo '<a href="?porcja='.($_GET['porcja']-1).'">Poprzednie</a> ';
  37. }
  38.  
  39. for($i = 0;$i<=floor($iloscWpisow/ILOSC_WYNIKOW_NA_STRONIE);$i++){
  40.    echo '<a href="?porcja='.($i).'">[ '.($i+1).' ]</a> ';
  41. }
  42. //jesli nie jestesmy na ostatniej stronie
  43. if($_GET['porcja']<floor($iloscWpisow/ILOSC_WYNIKOW_NA_STRONIE)){ 
  44.   //wyswietlamy link do nastepnej strony
  45.    echo ' <a href="?porcja='.($_GET['porcja']+1).'">Następne</a>';
  46. }
  47. ?>


Ten post edytował Master Miko 18.05.2006, 18:42:28


--------------------
Go to the top of the page
+Quote Post
Jabol
post
Post #3





Grupa: Przyjaciele php.pl
Postów: 1 467
Pomógł: 13
Dołączył: 22.02.2003

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


A ja nie będę taki zły, podam swój sposób zaimplementowany w smarty:
Kod
{if $data.info.pages gt 1}
<hr />
{math equation="page - 2" page=$data.info.page format="%d" assign=npage2}
{math equation="page - 1" page=$data.info.page format="%d" assign=npage1}
{math equation="page + 2" page=$data.info.page format="%d" assign=page2}
{math equation="page + 1" page=$data.info.page format="%d" assign=page1}
{if $npage1 gte 1}
{if $npage2 gte 1}
{if $npage2 gt 1}<a href="?id={$page.page_id}&news_page=1">[1...]</a>&nbsp;
{/if}<a href="?id={$page.page_id}&news_page={$npage2}">[{$npage2}]</a>&nbsp;
{/if}<a href="?id={$page.page_id}&news_page={$npage1}">[{$npage1}]</a>&nbsp;
{/if}
[{$data.info.page}]&nbsp;
{if $page1 lte $data.info.pages}&nbsp;<a href="?id={$page.page_id}&news_page={$page1}">[{$page1}]</a>
{if $page2 lte $data.info.pages}&nbsp;<a href="?id={$page.page_id}&news_page={$page2}">[{$page2}]</a>
{if $page2 lt $data.info.pages}&nbsp;<a href="?id={$page.page_id}&news_page={$data.info.pages}">[...{$data.info.pages}]</a>
{/if}
{/if}
{/if}
{/if}
Oczywiście $data.info.page to aktualna strona, a $data.info.pages to
  1. SELECT COUNT(*)
  2. FROM tabela
Reszta zmiennych się nie liczy.

Ten post edytował Jabol 18.05.2006, 19:25:11
Go to the top of the page
+Quote Post
mith
post
Post #4





Grupa: Zarejestrowani
Postów: 57
Pomógł: 0
Dołączył: 14.04.2006

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


Wielkie dzięki Master Miko a jak to jeszcze można przerobić, aby zamiast:

Poprzednie [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 10 ] [ 11 ] [ 12 ] [ 13 ] [ 14 ] [ 15 ] [ 16 ] [ 17 ] [ 18 ] [ 19 ] [ 20 ] [ 21 ] [ 22 ] [ 23 ] [ 24 ] [ 25 ] [ 26 ] [ 27 ] [ 28 ] [ 29 ] [ 30 ] [ 31 ] [ 32 ] [ 33 ] [ 34 ] Następne

Wyświetlane było np. coś takiego:

<< < 19 20 21 22 [23] 24 25 26 27 > >>

I kolejne moje pytanie jak do tego można zrobić wyszukiwarkę.
Go to the top of the page
+Quote Post
krzyszbi
post
Post #5





Grupa: Zarejestrowani
Postów: 251
Pomógł: 13
Dołączył: 15.09.2005

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


powinno dzialać
  1. <?php
  2. define('ILOSC_WYNIKOW_NA_STRONIE', 5);
  3.  
  4. include('db.php'); // połączenie z bazą itp
  5. //sprawdzamy ile rekorów jest w bazie
  6. $query = "SELECT SQL_CALC_FOUND_ROWS * FROM tabela";
  7. $result = mysql_query ($query);
  8. $ilosc_rekordow = @mysql_num_rows($result);
  9. //liczymy ile bedzie stron
  10.  $ile_stron=ceil($ilosc_rekordow/ILOSC_WYNIKOW_NA_STRONIE);  
  11. $SQL = "SELECT SQL_CALC_FOUND_ROWS * 
  12.  FROM tabela 
  13.  ORDER BY nazwa ASC 
  14.  LIMIT ".mysql_escape_string((int)$_GET['porcja']*ILOSC_WYNIKOW_NA_STRONIE).",".ILOSC_WYNIKOW_NA_STRONIE;
  15. // pobiera ILOSC_NA_STRONIE rekordów z bazy, sortując wg daty rosnąco
  16. , zaczynając od $_GET['porcja']*ILOSC_NA_STRONIE
  17. $RES = mysql_query($SQL); // wykonujemy zapytanie
  18.  
  19. print('<table border="1" width="100%" cellspacing="0" cellpadding="0" style="border-collapse: collapse" bordercolor="#F3F3F3">
  20. <tr><td><p align="left"><b>Nazwa</b></td>
  21. </tr><tr>
  22. ');
  23.  
  24. while($row = mysql_fetch_assoc($RES)){
  25.  /*Wyswietlanie wyników, przykładowo:*/
  26. print ('<td>'.$row["nazwa"].'</font></td></tr>
  27. ');
  28. }
  29.  
  30. print('</table>');
  31.  
  32. // w inny sposób pobieramy ilosc danych w bazie
  33. $SQL = "SELECT FOUND_ROWS() as Ilosc";
  34. $RES= mysql_query($SQL);
  35. list($iloscWpisow) = mysql_fetch_row($RES);
  36.  
  37. //Teraz wypadało by wyswietlic jakąc nawigację 
  38.  
  39. //jesli nie jestesmy na pierwszej stronie
  40. if($_GET['porcja']>0){ 
  41. //wyswietlamy link do poprzedniej strony
  42.  echo '<a href="?porcja='.($_GET['porcja']-1).'">Poprzednie</a> ';
  43. }
  44. if ($ile_stron>2*ILOSC_WYNIKOW_NA_STRONIE)
  45. {
  46. if ($strona<5)
  47. {
  48. $ile = 10;
  49. $start = 0;
  50. }
  51.  else
  52. {
  53. $ile = $strona + 5;
  54. if ($ile>$ile_stron)
  55. {
  56. $ile = $ile_stron;
  57. $start = $strona - 5;
  58. }
  59. else
  60. $start = $strona - 5;
  61. }
  62. }
  63. else
  64. {
  65. $ile = $ile_stron;
  66. $start = 0;
  67. }
  68. for($i=$start;$i<$ile;$i++){
  69.  echo '<a href="?porcja='.($i).'">[ '.($i+1).' ]</a> ';
  70. }
  71. //jesli nie jestesmy na ostatniej stronie
  72. if($_GET['porcja']<floor($iloscWpisow/ILOSC_WYNIKOW_NA_STRONIE)){ 
  73. //wyswietlamy link do nastepnej strony
  74.  echo ' <a href="?porcja='.($_GET['porcja']+1).'">Następne</a>';
  75. }
  76. ?>


--------------------
Everything should be made as simple as possible, but not simpler. - A.Eainstein
Go to the top of the page
+Quote Post
mith
post
Post #6





Grupa: Zarejestrowani
Postów: 57
Pomógł: 0
Dołączył: 14.04.2006

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


To wyświetla tylko:

Poprzednie Następne

A nie:

<< < 19 20 21 22 [23] 24 25 26 27 > >>
Go to the top of the page
+Quote Post
em1X
post
Post #7





Grupa: Zarejestrowani
Postów: 984
Pomógł: 41
Dołączył: 16.03.2002
Skąd: Płock

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


offtopic.gif ~krzyszbi chciałbym zobaczyć jak za rok miałbyś ten kod przerobić, zmienić coś.. niezłe spaghetti blink.gif

Ten post edytował em1X 19.05.2006, 15:57:02


--------------------
eh, co polska wódka to polska wódka
Go to the top of the page
+Quote Post
krzyszbi
post
Post #8





Grupa: Zarejestrowani
Postów: 251
Pomógł: 13
Dołączył: 15.09.2005

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


~mith a jakie wartości przyjmuja zmienne $start $ile przed petlą i.lub w warunkach

~em1X kod pisany juz dawno ale u mnie dziala dobrze kiedys każdy zaczynal i różnie mu to wychodzilo tongue.gif


--------------------
Everything should be made as simple as possible, but not simpler. - A.Eainstein
Go to the top of the page
+Quote Post
Master Miko
post
Post #9





Grupa: Zarejestrowani
Postów: 530
Pomógł: 0
Dołączył: 15.01.2005
Skąd: Warszawa

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


@Krzyszbi dziwny ten Twój kod... zmienia tylko sposób obliczeń a nie wyświetlania

Nie wiem czy to zadziała... ale powinno:

Pisane z palca


  1.  
  2. <?php
  3. define('ILOSC_WYNIKOW_NA_STRONIE', 5);
  4.  
  5. include('db.php'); // połączenie z bazą itp
  6.  
  7. $SQL = "SELECT SQL_CALC_FOUND_ROWS * 
  8.        FROM tabela 
  9.        ORDER BY nazwa ASC 
  10.        LIMIT ".mysql_escape_string((int)$_GET['porcja']*ILOSC_WYNIKOW_NA_STRONIE).",".ILOSC_WYNIKOW_NA_STRONIE;
  11. //  pobiera ILOSC_NA_STRONIE rekordów z bazy, sortując wg daty rosnąco
  12. , zaczynając od $_GET['porcja']*ILOSC_NA_STRONIE
  13. $RES = mysql_query($SQL); // wykonujemy zapytanie
  14.  
  15. print('<table border="1" width="100%" cellspacing="0" cellpadding="0" style="border-collapse: collapse" bordercolor="#F3F3F3">
  16. <tr><td><p align="left"><b>Nazwa</b></td>
  17. </tr><tr>
  18. ');
  19.  
  20. while($row = mysql_fetch_assoc($RES)){
  21.    /*Wyswietlanie wyników, przykładowo:*/
  22. print ('<td>'.$row["nazwa"].'</font></td></tr>
  23. ');
  24. }
  25.  
  26. print('</table>');
  27.  
  28. // w inny sposób pobieramy ilosc danych w bazie
  29. $SQL = "SELECT FOUND_ROWS() as Ilosc";
  30. $RES= mysql_query($SQL);
  31. list($iloscWpisow) = mysql_fetch_row($RES);
  32.  
  33. //Teraz wypadało by wyswietlic jakąc nawigację 
  34.  
  35. //jesli nie jestesmy na pierwszej stronie
  36. if($_GET['porcja']>0){ 
  37.     //wyswietlamy link do poprzedniej strony
  38.    echo '<a href="?porcja='.($_GET['porcja']-1).'"> << </a> ';
  39. }
  40.  
  41. for($i = 0;$i<=floor($iloscWpisow/ILOSC_WYNIKOW_NA_STRONIE);$i++){
  42.    echo '<a href="?porcja='.($i).'">'
  43.    if($_GET['porcja'] == $i) {echo '[';}
  44.    echo ' '.($i+1).' ';
  45.    if($_GET['porcja'] == $i) {echo ']';}
  46.    echo '</a> ';
  47. }
  48. //jesli nie jestesmy na ostatniej stronie
  49. if($_GET['porcja']<floor($iloscWpisow/ILOSC_WYNIKOW_NA_STRONIE)){ 
  50.   //wyswietlamy link do nastepnej strony
  51.    echo ' <a href="?porcja='.($_GET['porcja']+1).'"> >> </a>';
  52. }
  53. ?>



Cytat
zrobić wyszukiwarkę

Sugeruje do tego inny plik np. (search.php).
Proste. Poszytaj sobie w manualu mysql o WHERE i LIKE.
Poza tym:
1. Robisz formularz (gdzie użytkownik wpisuje czego szuka)
2. Potem wciska submit do submit.php
3. submit.php analizuje dane (sprawdza bezpieczeństwo) i wyszukuje przez WHERE i/lub LIKE tych wartości.
4. Skrypt wyświetla wyniki (do tego też może być stronicowanie)

Poradzisz sobie. Wystarczy umiejętnie przerobić ten skrypt. ALe ja się już tego nie podejmę winksmiley.jpg

Ten post edytował Master Miko 19.05.2006, 16:30:21


--------------------
Go to the top of the page
+Quote Post
piotrd
post
Post #10





Grupa: Zarejestrowani
Postów: 174
Pomógł: 0
Dołączył: 16.05.2006
Skąd: Łódź

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


Wszystko ładnie się przedstawia jeśli chodzi o dane pobrane z SQL... a czy dane pobrane za pomocą:
  1. <?php
  2. $zawartosc = file_get_contents("kg.txt");
  3. $tablica = explode("\n",$zawartosc);
  4. $ile = count($tablica);
  5. for ($i=$ile-1;$i>=0;$i--) {
  6. echo $tablica[$i]."\n";
  7. }
  8. ?>

z pliku kg.txt też da radę stronicować?

ew. czy też da radę stronicować to:
  1. <?php
  2. $i = 1;
  3. $ile = 3;
  4. $folder = "./galeria/fotosy";
  5. $dane = @file($folder."/dane.txt");
  6.  
  7. if(is_array($dane))
  8. foreach($dane as $v) {
  9. $d = explode("|", chop($v));
  10. echo "<img src=\"$folder/$d[3]\"/>". ($i == $ile ? "</td></tr><tr><td align=\"center\" valign=\"middle\">" : "</td><td align=\"center\" valign=\"middle\">")."";
  11. $i < $ile ? $i++ : $i = 1;
  12. }
  13. ?>


Ten post edytował piotrd 19.05.2006, 16:52:25


--------------------
piotrd
Go to the top of the page
+Quote Post
krzyszbi
post
Post #11





Grupa: Zarejestrowani
Postów: 251
Pomógł: 13
Dołączył: 15.09.2005

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


kodzik do danych z pliku
do bazy mala przeróbka i tez się nadale
dziala testowalem tongue.gif
kod do txt
  1. <?php
  2. $dane = file("test.txt");
  3. $ilosc_rekordow = count($dane);
  4. $ile_na_stronie = 20;
  5. $ile_stron = ceil($ilosc_rekordow/$ile_na_stronie);
  6. if ($ile_stron>$ile_na_stronie)
  7. {
  8. if ($_GET['strona']<10)
  9. {
  10. $ile = 10;
  11. $start = 0;
  12. }
  13.  else
  14. {
  15. $ile = $_GET['strona'] + 5;
  16. if ($ile>$ile_stron)
  17. {
  18. $ile = $ile_stron;
  19. $start = $_GET['strona'] - 5;
  20. }
  21. else
  22. $start = $_GET['strona'] - 5;
  23. }
  24. }
  25. else
  26. {
  27. $ile = $ile_stron;
  28. $start = 0;
  29. }
  30. for ($j=$_GET['strona']*$ile_na_stronie;$j<($_GET['strona']*$ile_na_stronie)+$ile_na_stronie;$j++)
  31. {
  32. if (isset($dane[$j]))
  33. {
  34. echo $dane[$j].'<br />';
  35. } 
  36. }
  37. echo '<br />'.$start.'&nbsp;&nbsp;'.$ile.'<br />';
  38. if($_GET['strona']>0)
  39. { 
  40.  echo '<a href="?strona='.($_GET['strona']-1).'">Poprzednie</a> ';
  41. }
  42. for($i=$start;$i<$ile;$i++)
  43. {
  44.  echo '<a href="?strona='.($i).'">[ '.($i+1).' ]</a> ';
  45. }
  46. if($_GET['strona']<$ile_stron-1)
  47. { 
  48.  echo ' <a href="?strona='.($_GET['strona']+1).'">Następne</a>';
  49. }
  50. ?>

przykladowy txt
Kod
pozycja 0
pozycja 1
pozycja 2
pozycja 3
pozycja 4
pozycja 5
pozycja 6
pozycja 7
pozycja 8
pozycja 9
pozycja 10
pozycja 11
pozycja 12
pozycja 13
pozycja 14
pozycja 15
pozycja 16
pozycja 17
pozycja 18
pozycja 19
pozycja 20
pozycja 21
pozycja 22
pozycja 23
pozycja 24
pozycja 25
pozycja 26
pozycja 27
pozycja 28
pozycja 29
pozycja 30

kod do DB
  1. <?php
  2. $ile_na_stronie = 20;
  3. $query = "SELECT id FROM tabela";
  4. $result = mysql_query ($query);
  5. $ilosc_rekordow = mysql_num_rows($result);
  6. $ile_stron = ceil($ilosc_rekordow/$ile_na_stronie);
  7. $query = "SELECT * FROM tabela ORDER BY id DESC LIMIT ".($_GET['strona']*$ile_na_stronie).",".$ile_na_stronie;
  8. $result = mysql_query ($query);
  9. while ($row = mysql_fetch_array($result)) 
  10. {
  11. //wyswietlamy co się nam podoba
  12. }
  13. //reszta bez zmian
  14. ?>

prosty ale spelnia swoje zadanie
oczywiście trzeba sprawdzic jakie zmiennedo nas docieraja $_GET['strona'] ale aby nie zaciemniać kodu nie wstawialem tego

Ten post edytował krzyszbi 19.05.2006, 17:18:38


--------------------
Everything should be made as simple as possible, but not simpler. - A.Eainstein
Go to the top of the page
+Quote Post
piotrd
post
Post #12





Grupa: Zarejestrowani
Postów: 174
Pomógł: 0
Dołączył: 16.05.2006
Skąd: Łódź

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


@krzyszbi Twoj pierwszy skrypt jest bardzo ładny, ale spojrz dokladnie na to:
  1. <?php
  2. $zawartosc = file_get_contents("kg.txt");
  3. $tablica = explode("\n",$zawartosc);
  4. $ile = count($tablica);
  5. for ($i=$ile-1;$i>=0;$i--) {
  6. echo $tablica[$i]."\n";
  7. }
  8. ?>

dane z kg.txt pokazywane sa na stronie w odwrotnej kolejnosci... a Twoj skrypt nie odwraca zapisu. Mozna to zmienic aby stronicowal i odwrocil kolejnosci wpisow do pliku?


--------------------
piotrd
Go to the top of the page
+Quote Post
kakq
post
Post #13





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 24.03.2005

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


powiedzcie mi czy tym stronicowanei z wiki da sie zrobic stronicowanei z htmla?
W bazie mam zapisany tekst sformatowany html i no i jak stronicuje to jak utnei mi jakiegos taga to juz wszystko sie wali. A moze macie jakis pomysl.
Go to the top of the page
+Quote Post
krzyszbi
post
Post #14





Grupa: Zarejestrowani
Postów: 251
Pomógł: 13
Dołączył: 15.09.2005

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


array-reverse
  1. <?php
  2. $dane= file("test.txt");
  3. $dane = array_reverse($dane);
  4. ?>

i wszystko ok


--------------------
Everything should be made as simple as possible, but not simpler. - A.Eainstein
Go to the top of the page
+Quote Post
tomekp
post
Post #15





Grupa: Zarejestrowani
Postów: 171
Pomógł: 0
Dołączył: 17.12.2003
Skąd: Krakół

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


Mój kod wygląda tak:
  1. <?php
  2. [snip]
  3. // [START] KOD PASKA DZIELACEGO STRONY
  4. $l = 25;  // Limit wyświetlanych obiektów na stronie
  5.  
  6. $o = 0;
  7. $curr_page = $_GET['page'];
  8.  
  9. if ((!empty($curr_page)) && ($curr_page != "1")) {
  10. if (($curr_page-1) == "0") {
  11. $o = (($curr_page-1)+$l);
  12. } else {
  13. $o = (($curr_page-1)*$l);
  14. }
  15. } else {
  16. $curr_page = ($o/$l) + 1;
  17. }
  18.  
  19. if ($curr_page > 5) {
  20. $min = $curr_page-3;
  21. $max = $curr_page+4;
  22. } else {
  23. $min = 1;
  24. $max = 9;
  25. }
  26. // [KONIEC] KOD PASKA DZIELACEGO STRONY
  27.  
  28. $ilosc_rekordow = mysql_fetch_assoc(sql("SELECT count( * ) AS ilosc_rekordow FROM klient_dane"));
  29. $ilosc_rekordow = $ilosc_rekordow['ilosc_rekordow'];
  30.  
  31. // [START] KOD PASKA DZIELACEGO STRONY
  32. if ($max >= ceil($ilosc_rekordow/$l)) {
  33. $max = ceil(($ilosc_rekordow/$l)+1);
  34. }
  35.  
  36. $smarty->assign('pasek', $pasek);
  37. $smarty->assign('curr_page', $curr_page);
  38. $smarty->assign('min_page', $min);
  39. $smarty->assign('max_page', $max);
  40. $smarty->assign('last_page', ceil($ilosc_rekordow/$l));
  41. // [KONIEC] KOD PASKA DZIELACEGO STRONY
  42. [snip]
  43. ?>

I kod w pliku tpl:
  1. [snip]
  2. {if $last_page != "0" && $last_page != "1"}
  3. <tr class="text1">
  4. <td width="600" align="center" class="list" colspan="4">
  5. {if $curr_page != "1" && !empty($curr_page)}
  6. <a href="{$smarty.server.PHP_SELF}?option=clients&action=list&sort={$smarty.get.sort}&page={$curr_page-1}{$pasek}">Ť poprzednia</a> |
  7. {/if}
  8. {section name=pasek start=$min_page loop=$max_page step=1}
  9. {if $smarty.section.pasek.index == $curr_page}
  10. {if $curr_page == $last_page}
  11. [<b>{$smarty.section.pasek.index}</b>]
  12. {else}
  13. [<b>{$smarty.section.pasek.index}</b>] |
  14. {/if}
  15. {else}
  16. <a href="{$smarty.server.PHP_SELF}?option=clients&action=list&sort={$smarty.get.sort}&page={$smarty.section.pasek.index}{$pasek}">{$smarty.section.pasek.index}</a> |
  17. {/if}
  18. {/section}
  19. {if $curr_page != $last_page}
  20. <a href="{$smarty.server.PHP_SELF}?option=clients&action=list&sort={$smarty.get.sort}&page={$curr_page+1}{$pasek}">następna ť</a>
  21. {/if}
  22. </td>
  23. </tr>
  24. {/if}
  25. [snip]


--------------------
escape from the execution is futile.
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: 21.08.2025 - 11:01