- 浏览: 53700 次
- 性别:
- 来自: 济南
文章分类
最新评论
-
wangyalei:
phpgood 写道嗯嗯,挺全面的,但正则是很容易忘记的!我想 ...
php学习笔记(正侧表达式一) -
phpgood:
期待你分享更多的学习笔记!
php学习笔记(魔术方法的使用) -
phpgood:
好!
php学习笔记(魔术方法的使用) -
phpgood:
嗯嗯,挺全面的,但正则是很容易忘记的!我想问的是怎样才能比较牢 ...
php学习笔记(正侧表达式一) -
gryphone:
干嘛 吃素 这样人家会怀疑你的体质的 00X
最牛软件开发人员----自我评价
本类能够实现像百度、谷歌一样的分页效果
********** * * 分页的pojo * * @author wangyalei * */ class PageInfo{ // 下一页 private $nextpage; //上一页 private $uppage; //当前页 private $curpage; //总页数 private $allpage; //数据总数量 private $allnumber; // 每页显示的个数 public static $page_record = 2; //最多显示的分页数 public static $liststep = 10; //用来初步初始化会一些信息 public function __construct($allnumber,$curpage){ $this->allpage = intval(($allnumber+self::$page_record-1)/self::$page_record); $this->curpage = $curpage ; $this->allnumber = $allnumber; } //分页信息显示到第几页 public function getListend(){ //如果总页数没有 预定页数多的 显示总页数 if($this->allpage < self::$liststep){ return $this->allpage; }else{ $listend = $this->curpage + self::$liststep/2; if($listend > $this->allpage){ $listend = $this->allpage+1; } return $listend; } } //分页的开始显示 public function getlistbegin(){ $listbegin=(intval($this->curpage)-intval(ceil((double)self::$liststep/2))); if ($listbegin < 1) $listbegin = 1; return $listbegin; } //得到下一页 public function getNextpage(){ return $this->curpage + 1 ; } //得到上一页 public function getUppage(){ return $this->curpage - 1; } //得的当前显示的页数 public function getCurpage(){ return $this->curpage; } //得到总页数 public function getAllpage(){ return $this->allpage ; } //得到数据的总数量 public function getAllnumber(){ return $this->allnumber ; } //每页显示的个数 public static function getPage_record(){ return $this->page_record ; } }
测试一下
<?php /* * Created on 2010-8-17 * * @author wangyalei * */ header("Content-type: text/html; charset=gbk"); require("mysql.php"); require("PageInfo.php"); //判断 有page 请求么 //取得url中的page从参数 $url = $_SERVER["REQUEST_URI"]; // 如果有 if(strpos($url,"page=")!==false){ //从浏览器请求冲查看 当前是第几页 $curpage = $_GET["page"]; }else{ $curpage = 1; } //得到数据库连接 $conn = MySql::getInstatnce(); //数据总数量 $sql = "select * from test"; $query = $conn->query($sql); $num = $conn->row_num($query); // 计算当前页数据显示从第几个开始 //($nowpage = ($curpage -1)*每页显示的个数) $nowpage =($curpage - 1)*PageInfo::$page_record.","; /******* * @param $num 数据总数量 * @param $curpage 当前页 */ $pageInfo = new PageInfo($num,$curpage); // 进行分页处理 $sql = "select * from test limit $nowpage ".PageInfo::$page_record; //执行sql 语句 $result = $conn->query($sql); while( $row =$conn->fetch_array($result)){ echo "<hr><b>".$row["name"]." | ".$row["sex"]; } ?> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title></title> <style type="text/css"> <!-- .STYLE3 {font-size: 12px} .STYLE1 {color: #00FFCC} --> .bi {background-color:#D9E1F7;height:20px;margin-bottom:12px} A:link {COLOR: blue; TEXT-DECORATION: none} A:active {COLOR: blue; TEXT-DECORATION: none} A:visited {COLOR: #660066; TEXT-DECORATION: none} A:hover {COLOR: blue; TEXT-DECORATION: none;position:relative;left:2px;top:2px} </style> </head> <script> function Num(){ var num=document.form1.num.value; if(num=="页/数"){ document.form1.num.value=""; } } function SelectNum(){ var num=document.form1.num.value; if(!isNumeric(num)){ alert("请输入数字"); return false; } form1.action="test.php?page="+num+""; form1.submit(); } function isNumeric(value){ if( value != null && value.length>0 && isNaN(value) == false){ return true; } else{ return false; } } </script> <body> <form id="form1" name="form1" method="post" action="test.php"> <p> <?php if(intval($pageInfo->getCurpage())>1){ ?> <a href=test.php?page=1><span class="tt3">首页</span></a> <a href=test.php?page=<?php echo $pageInfo->getUppage();?>><span class="tt3">上一页</span></a> <?php } ?> <?php for($i=$pageInfo->getlistbegin(); $i<$pageInfo->getListend(); $i++){ if($i!=$pageInfo->getCurpage()){ ?> <?php echo "<a href=test.php?page=".$i .">[".$i ."]</a>";?> <?php } else{ ?> <?php echo "[".$i ."]";?> <?php } } ?> <?php if(intval($pageInfo->getCurpage())!=intval($pageInfo->getAllpage())){ ?> <a href=test.php?page=<?php echo $pageInfo->getNextpage();?>><span class="tt3">下一页</span></a> <a href=test.php?page=<?php echo $pageInfo->getAllpage(); ?>><span class="tt3">尾页</span></a> <?php }?> <label> <input name="num" type="text" id="num" value="页/数" size="6" onfocus="Num()"></input> </label> <label> <input type="button" name="Submit2" value="GO" onClick="SelectNum()" > </label> </p> </form> </body> </html>
效果如下
如果用smarty模板或是其他模板来做就更简单了
发表评论
-
php学习笔记(正侧表达式一)
2010-08-29 22:55 1271字符 说明 ^ ... -
php学习笔记(魔术方法的使用)
2010-08-26 20:34 10841 __construct().当实例 ... -
php学习笔记(开发中常设置的内置函数)
2010-08-23 22:48 1647为了使自己的程序在不同的平台中拥有更好的兼容性,很多时候我们都 ... -
目录操作
2010-08-23 15:31 0皆さんこんにちは、まず自己紹介させていただき、私は第1事業部の ... -
php学习笔记(日期函数用法总结)
2010-08-22 13:36 1344php中对时间日期的处理时相对简单的,php中提供了date ... -
php学习笔记(数组函数用法总结)
2010-08-21 11:24 0array -
php学习笔记(预防session拦截)
2010-08-20 21:21 0拦截 -
php学习笔记(异常处理)
2010-08-20 15:10 0exception -
php学习笔记(过滤器)
2010-08-20 14:29 0过滤器 -
php学习笔记(国际化)
2010-08-20 14:00 0国际化 -
php学习笔记(防sql注入)
2010-08-20 13:59 0sql注入 -
php学习笔记(数字函数用法总结)
2010-08-20 13:53 0数字 -
php学习笔记(上传与下载类)
2010-08-19 21:30 1313php中的文件上传很简单 不像java 中需要借助 commo ... -
php学习笔记(序列化应用)
2010-08-18 10:22 747//php中的序列化 //大部分用与 处理数组传递,数组存库 ... -
php学习笔记(搜索引擎)
2010-08-17 21:34 0搜索引擎 -
php学习笔记(反射机制)
2010-08-17 21:00 0反射 -
php学习笔记(php.inc的配置详解)
2010-08-15 11:45 1190学习php 先要了解一下php的配置 对以后的学习很有帮助 , ... -
php学习笔记(svs)
2010-08-15 11:41 0svd -
php学习笔记(字符过滤类)
2010-08-15 00:55 0过滤 -
php学习笔记(HTTP认证)
2010-08-14 13:20 0http
相关推荐
PHP个人学习笔记
【标题】:“当年我学PHP时整理的学习笔记” 这篇学习笔记是作者在学习PHP编程语言的过程中逐步积累并整理的,涵盖了初学者从基础到进阶的一些关键知识点。PHP是一种广泛应用于网页开发的服务器端脚本语言,尤其在...
Java学习笔记Java学习笔记Java学习笔记Java学习笔记Java学习笔记Java学习笔记Java学习笔记Java学习笔记Java学习笔记Java学习笔记Java学习笔记Java学习笔记Java学习笔记Java学习笔记Java学习笔记Java学习笔记Java学习...
Learning hard C# 学习笔记
CCNA学习笔记 CCNA学习笔记 CCNA学习笔记
老友记全十季的学习笔记。帮助提高英语能力。解析到位~
LearningHard C#学习笔记,学习C#的经典入门教材。 非常适合初学者,希望大家一起努力。
希沃白板学习笔记.pdf希沃白板学习笔记.pdf希沃白板学习笔记.pdf希沃白板学习笔记.pdf希沃白板学习笔记.pdf希沃白板学习笔记.pdf希沃白板学习笔记.pdf希沃白板学习笔记.pdf希沃白板学习笔记.pdf
Springcloud学习笔记.md,Springcloud学习笔记.md,Springcloud学习笔记.md,Springcloud学习笔记.md,Springcloud学习笔记.md,Springcloud学习笔记.md,Springcloud学习笔记.md,Springcloud学习笔记.md,Spring...
docker学习笔记,学习docker时做的学习笔记,有例子
学习docker时看到的学习笔记
人工智能学习笔记,人工智能学习笔记,人工智能学习笔记人工智能学习笔记,人工智能学习笔记,人工智能学习笔记人工智能学习笔记,人工智能学习笔记,人工智能学习笔记人工智能学习笔记,人工智能学习笔记,人工智能...
docker学习笔记,docker学习笔记,docker学习笔记,docker学习笔记,docker学习笔记,docker学习笔记,docker学习笔记,docker学习笔记,docker学习笔记,docker学习笔记,docker学习笔记,docker学习笔记,docker学习笔记,...
ssh学习笔记1 ssh学习笔记1 ssh学习笔记1 ssh学习笔记1 ssh学习笔记1 ssh学习笔记1 ssh学习笔记1
Contiki学习笔记:进程、事件、etimer关系 Contiki 实例: Contiki学习笔记:创建两个交互进程 Contiki 主函数剖析: Contiki学习笔记:main函数剖析 Contiki学习笔记:启动一个进程process_start Contiki学习笔记...
springcloudalibaba学习笔记
cad12学习笔记cad12学习笔记cad12学习笔记cad12学习笔记cad12学习笔记cad12学习笔记
nginx学习笔记(软件+学习笔记) 仅供学习交流! 后续会持续分享相关资源,记得关注哦! nginx学习笔记(软件+学习笔记) 仅供学习交流! 后续会持续分享相关资源,记得关注哦! nginx学习笔记(软件+学习笔记) ...
这份"Linux学习笔记(强悍总结值得一看)"是Linux初学者的宝贵资源,也适合有经验的用户作为参考手册。以下是对笔记内容的详细概述: 1. **Linux常用命令**: Linux命令行是其强大的工具,掌握常用命令是Linux学习...