Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Pagination - z czystego PHP do smartów., proszę o pomoc w kodzie php.
casperii
post
Post #1





Grupa: Zarejestrowani
Postów: 681
Pomógł: 28
Dołączył: 14.08.2014

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


Panowie nie mogę poradzić sobie z implementacją kodu do smartów.

Kod czystego php:

  1. $ile_stron = tu wynik pobrany z bazy;
  2.  
  3. if($ile_stron%10 != 0){
  4. $ile_stron = ($ile_stron / 10) +1;
  5. }else{
  6. $ile_stron = $ile_stron / 10;
  7. }
  8.  
  9. if(!empty($_GET['page']) && is_numeric($_GET['page'])){
  10. $page = $_GET['page'];
  11. }else{
  12. $page = 1;
  13. }
  14.  
  15. if(($ile_stron - ((($ile_stron*10)%10)/10))>1){
  16. for($z=1; $z <= $ile_stron; $z++){
  17. if($z == $page){
  18. print('<a href="index.php?page='.$z.'" style="font-weight:bold">'.$z.'</a>');
  19. }else{
  20. print('<a href="index.php?page='.$z.'">'.$z.'</a>');
  21. }
  22. }
  23.  
  24. }


powyższy kod działa na czystych php. Chciałbym to teraz przerobić na smarty.
{for} {/for} nie działa w smartach - tzn. aby działało trzeba coś w pliku smart modyfikować, więc pewnie tylko foreach w smartach.

Dziękuje za pomoc.

Ten post edytował casperii 29.05.2016, 17:15:21
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Johnas
post
Post #2





Grupa: Zarejestrowani
Postów: 650
Pomógł: 16
Dołączył: 5.07.2010
Skąd: Ściśle Tajne

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


Polecam Tobie klase php:

Mysqli Class PHP

  1. $pagination["active"] = $strona; // strona aktywna
  2. $pagination["totalPages"] = $servers_data["totalPages"]; // wszystkich stron
  3. $pagination["url"] = "lista-serwerow"; // link strony
  4. $smarty->assign('pagination', $pagination);


oraz pagination.tpl

  1. <div class="pagination pagination__posts">
  2. <ul>
  3. {if $pagination.active < 3}
  4. {$start = 1}
  5. {else}
  6. {$start = $pagination.active-2}
  7. {/if}
  8.  
  9. {if $pagination.active neq 1}
  10. <li class="first"><a href="{$config->domain}/{$pagination.url}/page/1">Pierwsza</a></li>
  11. <li class="prev"><a href="{$config->domain}/{$pagination.url}/page/{$pagination.active-1}">Poprzednia</a></li>
  12. {/if}
  13.  
  14. {for $foo=$start to $pagination.totalPages max=5}
  15. {if $foo eq $pagination.active}
  16. <li class="active"><span>{$foo}</span></li>
  17. {else}
  18. <li><a href="{$config->domain}/{$pagination.url}/page/{$foo}" class="inactive">{$foo}</a></li>
  19. {/if}
  20. {/for}
  21. {if $pagination.active neq $pagination.totalPages}
  22. <li class="next"><a href="{$config->domain}/{$pagination.url}/page/{$pagination.active+1}">Następna</a></li>
  23. <li class="last"><a href="{$config->domain}/{$pagination.url}/page/{$pagination.totalPages}">Ostatnia</a></li>
  24. {/if}
  25. </ul>
  26. </div>


Kod pochodzi ze strony: https://www.net4um.net/lista-serwerow

  1. if($ile_stron%10 != 0){


Brawo (IMG:style_emoticons/default/sciana.gif) od kiedy znak dzielenia dajemy procentowo ?
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: 4.10.2025 - 03:28