Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Jak w stronicowaniu porobić tak:, [1], [2], ... [8] chodzi o kropeczki?
miedzna
post 15.03.2005, 10:04:18
Post #1





Grupa: Zarejestrowani
Postów: 401
Pomógł: 1
Dołączył: 10.03.2004
Skąd: Warszawa

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


Witam, mam taki kod, który robi zapytanie do bazy i stronicowanie:
  1. <TABLE CELLSPACING=0 CELLPADDING=4 WIDTH="600" style="margin-left:-1px;margin-top:1px;">

  1. <?php
  2. $intLimit = 3;
  3. if( empty( $_GET['nr'] ) )
  4. {
  5. $intCurrentPage = 0;
  6. }
  7. else
  8. {
  9. $intCurrentPage = $_GET['nr'];
  10. }
  11. include('connect.php');
  12. $cnt = mysql_result(mysql_query('SELECT COUNT(*) FROM `newsy`'), 0, 0);
  13. $intCount = $cnt;
  14. $aktuwysw = $intCurrentPage +1;
  15.  
  16. echo &#092;"<div align=\"right\">\";
  17.  
  18. for($i = 0; $i<ceil($intCount/$intLimit); $i++)
  19. {echo '<a href=\"calosc.php?nr='.$i.'\">['.($i+1).']</a>&nbsp;';}
  20. echo &#092;"&nbsp;<span class=\"tresc\">strona:<B>$aktuwysw</B></span><BR>\";
  21. echo &#092;"</div>\";
  22.  
  23. $wynik = mysql_query (&#092;"SELECT * FROM newsy \". \"ORDER BY 'data' DESC LIMIT \".($intCurrentPage*$intLimit).\",\".$intLimit) or die (mysql_error());
  24. while ($row = mysql_fetch_array ($wynik)) {
  25. printf(&#092;"<tr><td bgcolor=\"#b5dbef\" class=\"tytul\">&nbsp;<a name=\"%s\"></a>%s</td></tr>n\", $row[\"news_id\"], $row[\"tytul\"]);
  26. printf(&#092;"<tr><td bgcolor=\"#fff3de\"><span class=\"data\">( %s )</span><BR>n\", $row[\"data\"]);
  27. printf(&#092;"<span class=\"tresc\">%s<BR><BR>%s</span><BR><BR></td></tr>n\", $row[\"wstep\"], $row[\"tresc\"]);
  28. }
  29. echo &#092;"</table>\";
  30.  
  31. echo &#092;"<div align=\"right\">\";
  32. for($i = 0; $i<ceil($intCount/$intLimit); $i++)
  33. {echo '<a href=\"calosc.php?nr='.$i.'\">['.($i+1).']</a>&nbsp;';}
  34. echo &#092;"&nbsp;<span class=\"tresc\">strona:<B>$aktuwysw</B></span><BR>\";
  35. echo &#092;"</div>\";
  36. ?>


wszystko działa, tylko wyświetla mi już 12 cyferek, chodzi o to, żeby zastapić część cyferek kropkami ...

Dzieki i pozdrawiam
Go to the top of the page
+Quote Post
Kuziu
post 15.03.2005, 10:29:14
Post #2





Grupa: Zarejestrowani
Postów: 743
Pomógł: 0
Dołączył: 11.11.2003
Skąd: Toruń

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


  1. <?php
  2.  
  3. $limit = 3; // Pokaż 3 wstecz i 3 po od aktualnej ...
  4.  
  5. if($currentPage > $limit){ 
  6.  echo(PIERWSZASTRONA);
  7. }
  8. $start = (($currentPage - $limit)<1) ? 1 : ($currentPage-$limit); 
  9. $end = (($currentPage + $limit)>$totalPages) ? $totalPages : ($currentPage + $limt);
  10. for($i=$start; $i<$end; $i++){
  11.  echo(NUMER STRONY $i);
  12. }
  13. if($currentPage + $limit < $totalPages){ 
  14.  echo(OSTATNIA STRONA);
  15. }
  16.  
  17. ?>

Opis do linii:

5 // Jeśli jesteś np. na 5 stronie a limit ma 3 czyli nie widać linku nr 1 to pokaż link do 1 podstrony
8 // Od której ma zacząć liczyć ... jeśli jesteś np. na 2 podstronie a limit ma 3 (czyli by wyszło na minus) to zacznij od jedynki jak nie to od Aktualnej - 3
9 // to samo co wyżej tylko do obliczneia końca (czy nie wychodzi poza limit)
13 // Jeśli jesteś np. na 3 stronie a wszystkich jest ponad 6 to pokaz link do ostatniej podstrony ... tak jak z pierwszą

Ten post edytował Kuziu 15.03.2005, 10:34:03


--------------------
Słońce zachodzi ... kolejna noc nadchodzi ...
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: 15.08.2025 - 02:59