http://www.phpinsider.com/php/code/SmartyPaginate/
Ono što sam malo igrajući se uspio da prikažem rezultate u templejtu, ali mi problem pravi navigacija. Ovo je moj kod koji mi radi.
index.php
Code:
<?php
session_start();
require('../libs/Smarty.class.php');
require('SmartyPaginate.class.php');
// required connect
SmartyPaginate::connect();
// set items per page
SmartyPaginate::setLimit(5);
// assign your db results to the template
$smarty->assign('results', get_db_results());
// assign {$paginate} var
SmartyPaginate::assign($smarty);
// display results
$smarty->display('index.tpl');
function get_db_results() {
// normally you would have an SQL query here,
// for this example we fabricate a 100 item array
// (emulating a table with 100 records)
// and slice out our pagination range
// (emulating a LIMIT X,Y MySQL clause)
$_data = range(1,100);
SmartyPaginate::setTotal(count($_data));
return array_slice($_data, SmartyPaginate::getCurrentIndex(), SmartyPaginate::getLimit());
}
?>
<?php
session_start();
require('../libs/Smarty.class.php');
require('SmartyPaginate.class.php');
// required connect
SmartyPaginate::connect();
// set items per page
SmartyPaginate::setLimit(5);
// assign your db results to the template
$smarty->assign('results', get_db_results());
// assign {$paginate} var
SmartyPaginate::assign($smarty);
// display results
$smarty->display('index.tpl');
function get_db_results() {
// normally you would have an SQL query here,
// for this example we fabricate a 100 item array
// (emulating a table with 100 records)
// and slice out our pagination range
// (emulating a LIMIT X,Y MySQL clause)
$_data = range(1,100);
SmartyPaginate::setTotal(count($_data));
return array_slice($_data, SmartyPaginate::getCurrentIndex(), SmartyPaginate::getLimit());
}
?>
Ovo mi je index.tpl templejt
Code:
{* display pagination header *}
Items {$paginate.first}-{$paginate.last} out of {$paginate.total} displayed.
</br>
{section name=reska loop=$results}
{$results[reska]}
{/section}
{* display pagination header *}
Items {$paginate.first}-{$paginate.last} out of {$paginate.total} displayed.
</br>
{section name=reska loop=$results}
{$results[reska]}
{/section}
Kada dodam ovaj dio za navigaciju koji je preporučen u primjeru za linkovanje:
Code:
{* display pagination info *}
{paginate_prev} {paginate_middle} {paginate_next}
{* display pagination info *}
{paginate_prev} {paginate_middle} {paginate_next}
onda mi izbacuje da je ovo paginate_prev paginatE_middle i paginate_next da je nepoznato u templejtu. Molio bih ove malo iskusnije da mi pomognu oko ovog linkovanja. Vjerujem da bi i ostalim početnicima dobrodošlo. Usput, koristim smarty 3.