Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Załamywanie danych
Athlan
post
Post #1





Grupa: Developerzy
Postów: 823
Pomógł: 12
Dołączył: 18.12.2005

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


Znalazłem taki skrypt załamywania stron:

  1. <?
  2. $podstron=ceil($wszystkich/$ile-1);
  3. if ($page>0) echo "<a href=wynik.php?page=".($page-1).">Poprzednia</a>"; else
  4. echo "Poprzednia";
  5. for($x=0;$x<=$podstron;$x++)
  6.  {
  7.  
  8. if ($x==$page) echo "[ ".($x+1)." ] "; else echo "<a href=wynik.php?page=$x>".($x+1)." </a>";
  9.  }
  10. if ($page<$podstron) echo "<a href=wynik.php?page=".($page+1).">Następna</a>";
  11. else echo "Następna";
  12.  
  13. ?>


Ale to daje takie efekt, np.
Kod
Poprzednia 1 2 3 4 5 6 [7] 8 9 10 11 12 Nasępna


A chciałbym takie coś:
Kod
Poprzednia 1 2 ... 6 [7] 8 ... 11 12 Nasępna


Wiem, że powinny być na to jakoś postawione pętle (z tego co Apo mówił), ale nie umiem sobie z tym poradzić.

Macie jakieś rozwiązanie :?: (na google szukałem i na tym forum, ale nic (IMG:http://forum.php.pl/style_emoticons/default/sadsmiley02.gif) )
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Apo
post
Post #2





Grupa: Zarejestrowani
Postów: 426
Pomógł: 1
Dołączył: 2.10.2005

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


użyj kilku pętli i kilku warunków i wytęższ mózg na chwile. Podziel sobie zadanie na kilka etapów jak masz to zrobić.
Najpierw musisz mieć wyświetlonych kilka pierwszych podstron np. 1 2 3 no i kilka ostatnich 26 27 28. Potem za pomocą warunku sprawdzisz która jest strona aktywna i znowu warunkiem np czy jest większa od 5 a mniejsza od 24 jeśli tak to wyświetl strone aktywną i jedną podstrona do przodu i jedna do tyłu. No i potem znowu warunek jeśli jest strona aktywna z przedziału od 1-3 to wyświetla np 5 do przodu (dzięki temu unikniiesz powtórzeń) itd. Jak już zaczniesz i natrafisz na problem to napisz posta.
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 5.10.2025 - 11:42