include "conn.php"; //引入数据库操作类$conn=new conn(); //实例化数据库操作类$total=$conn->getOne("select count(*) as total from goods"); $total=$total["total"]; //goods表数据总数据条数 $num=6; //每页显示条数 $totalpage=ceil($total/$num);//计算页数 if(isset($_GET["page"]) && $_GET["page"]<=$totalpage){//这里做了一个判断,若get到数据并且该数据小于总页数情况下才付给当前页参数,否则跳转到第一页 $thispage=$_GET["page"]; }else{ $thispage=1; } <BR>//注意下面sql语句中红色部分,通过计算来确定从第几条数据开始取出,当前页数减去1后再乘以每页显示数据条数 $sql="select goods_id,goods_name,shop_price from goods order by goods_id limit ".<SPAN style="COLOR: #ff0000">($thispage-1)*$num</SPAN>.",".$num."";$data=$conn->getAll($sql);foreach($data as $k=>$v){ echo "<li>".$v["goods_id"]."、".$v["goods_name"]."---¥".$v["shop_price"]."</li>"; } <BR>//显示分页数字列表 for($i=1;$i<=$totalpage;$i++){ echo "<a href="?page=".$i."">".$i."</a> "; }上述代码实现了一个最简单的PHP分页效果:
仅实现点击翻页数字显示不同的翻页数据,可以在此基础上进一步完善,只要基础原理理解后,后续工作就比较容易开发了。
conn.php代码:
/* *连接数据库 进行相关查询操作 */ class conn{public function __construct(){ include_once("config.php"); try{ $this->pdo = new PDO("mysql:host=localhost;dbname=test", "root", "123456"); $this->pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); $this->pdo->exec("set names utf8"); }catch(PDOException $e){ echo "数据库连接失败:".$e->getMessage(); exit(); } }//获取一行数据 public function getOne($sql){ $rs=$this->pdo->query($sql)->fetch(PDO::FETCH_ASSOC);return $rs; }//获取多行数据结果 public function getAll($sql){ $rs=$this->pdo->query($sql)->fetchall(PDO::FETCH_ASSOC);return $rs;} }conn.php功能是完成数据库连接,并实现取出数据操作方法,这里我使用的是pdo,这里可以根据大家习惯来组织代码。* *配置数据库信息 */ $cfg_dbhost="localhost"; $cfg_dbname="test"; $cfg_dbuser="root"; $cfg_dbpw="123456";该例子仅是为了说明基础的分页原理,距真正使用还有很多修改地方。