php 后端
//打开global(类似缓存机制),获取相应参数
global $_W,$_GPC;
//获取页数
$pindex = max(1, intval($_GPC['page']));
//获取页行数
$psize = 5;
//使用拼接sql语句
$sql = 'SELECT * FROM '.tablename('表名').' WHERE ORDER BY id DESC ';
if(!empty($_GPC['搜索关键字'])){
$sql .= ' AND 被搜索字段 LIKE :搜索关键字 ';
$params[':搜索关键字'] = '%'.$_GPC['搜索关键字'].'%';
}
$sql .= " limit " . ($pindex - 1) * $psize . ',' . $psize;
$list = pdo_fetchall($sql,$params);
$total = pdo_fetchcolumn('SELECT COUNT(1) FROM '.tablename('表名').' WHERE ',$params);
//(前台用pager标签可以直接显示)
$pager = pagination($total, $pindex, $psize);
html 前端
<div style="padding: 20px;text-align: right" >
{$pager}
</div>
这里有个特别注意的地方。
带分页的地方,如果你顶部带有搜索框, 那么form 中一定要用 get 方法去传参数,若用 post的话,分页是带不过去的,一定要注意。
<form action="" method="get" class="form-horizontal table-search" role="form" id="search">
......
</form>