一个简单是php分页函数,没有什么特色,大家给点意见吧
<?php
function page($sql,$url,$onceRows = 8,$b = true,$add = “?”){
global $db;
/* 分页程序初始化 */
if (!isset($_GET['pageNum']) || $_GET['pageNum'] == 0) {
$pageNum = 1;
} else {
$pageNum = $_GET['pageNum'];
}
/////设置一次读取行数,算出需要的页面数/////
$startRow = ($pageNum – 1) * $onceRows;
if(!$b){ //根据$b的值返回的是分页还是查询结果
$lists = $db -> query($sql.” LIMIT “.$startRow.”,”.$onceRows);
$arr = array();
while($list = $lists -> fetch(PDO::FETCH_ASSOC)){
$arr[] = $list;
}
return $arr;
}else{
$res = $db -> query($sql);
$rows = $res -> rowCount();
if (is_float($rows / $onceRows)) {
$pageSum = intval($rows / $onceRows) + 1;
} else {
$pageSum = $rows / $onceRows;
}
$haspre = false; //是否有上一页
$hasnext = false; //是否有下一页
/////处理各种情况下的上一页,下一页/////
switch ($pageNum) {
case 1:
$backPage = 1;
if (($pageNum + 1) > $pageSum) {
$nextPage = $pageSum;
} else {
$nextPage = $pageNum + 1;
$hasnext = true;
}
break;
case $pageSum:
$backPage = $pageNum – 1;
$nextPage = $pageSum;
$haspre = true;
break;
default:
$backPage = $pageNum – 1;
$nextPage = $pageNum + 1;
$haspre = true;
$hasnext = true;
}
$str = “<center>”;
/////动态生成页码部分/////
if($res -> rowCount() > 0){
$str .= ‘<div id=”pageNum”>’;
if($pageNum != 1){
$str .= ‘<a style=”margin-right:5px;” href=”‘.$url.$add.’pageNum=1″>首页</a>’;
}
if($haspre){
$str .= ‘<a href=”‘.$url.$add.’pageNum=’.$backPage.’”>上一页</a>’;
}
for ($i = 1;$i <= $pageSum;$i ++ ) {
$str .= ‘<a style=”margin-left:5px;’;
if ($i == $pageNum) {
$str .= ‘color:red;’;
}
$str .= ‘” href=”‘.$url.$add.’pageNum=’.$i.’”>’.$i.’</a>’;
}
if($hasnext){
$str .= ‘<a style=”margin-left:5px;” href=”‘.$url.$add.’pageNum=’.$nextPage.’”>下一页</a>’;
}
if($pageNum != $pageSum){
$str .= ‘<a style=”margin-left:5px;” href=”‘.$url.$add.’pageNum=’.$pageSum.’”>最后一页</a>’;
}
$str .= ‘</div>’;
}
$str .= “</center>”;
return $str;
}
}
?>
更多实用程序:http://www.52blogger.com/archives/106
分享到:
相关推荐
自己写的PHP sqlite 分页代码程序
php分页程序 小结
这是一个由java实现的一个分页程序,很实用的奥!
JAVA自己写的一个分页类 大家可以看看 里面有1个辅助类和1个JSP页面。一个CSS。还有我自己写的类。应该有注释你们可以看看!
自己写的一个自定义分页
自己写的PHP分页类,实现数据库查询分页。
根据一页显示的记录条数,来实现分页,然后数据存储到dataset表中,根据当前的页码,点击上页,下页,来传值--当前的页码,来动态的绑定到table表格中
select * from tbname limit xx,xx 一直被誉为mysql最完美的分页 使用方法详见我写的说明
牛人写的分页程序,分页标签,Java自定义标签分页 值得一看
于是写了一个,可以自动适应范围的页码分页程序 也就是说,页码格式如下 << < 1 2 3 4 5 6 7 > >> << < 6 7 8 9 10 11 12 > >> 下划线为当前页,这样就可以固定显示一个相近的页码,避免太长影响美观 代码加了注释,...
我在一些PHP论坛上经常看到不少PHP初学者对于PHP分页很头痛,所以我就抽一点时间将我所写的网站中 的分页功能给分离出来给广大PHP初学者做为参考或者使用。 程序的演示效果您可以登录到淘宝网寻宝客...
一个简单,但是功能非常强大的PHP页面分页程序类。不需要过多的配置即可使用。
物理分页查询 只需要传 开始页数和每页多少条数据 到实体类 然后在sql语句中写分页参数就可以使用了
php页面显示及页面分页功能,代码清晰,注释明确!
php 分页程序 主要应用在手写代码中 不是 mvc 情况下
自己写的一个比较实用的php分页函数,个人觉得还可以,值得一看,老鸟飘过。
自己写的一个分页程序 互相交流学习 #region 定义分页的一些常量 int pageSize = 8;//每页显示信息数量 int pagesCount_view; // 用于提示用户关于页码的总数 int pagesCount_operte;//用于操作分页关于页码的...
用PHP实现了网站开发中常用的分页功能。并且实现了很好的封装哦!使用起来简单方便啦
类似论坛的漂亮的PHP分页程序,数据库MSSQL. 欢迎下载
自己写的jQuery分页根据json分页