PHP paging code must be used in various program development, and in website development It is a must-select.
To write paging code, you must first understand the SQL query statement: select * from goods limit 2,7. The core of the PHP paging code revolves around this statement. The SQL statement explains: Query the goods data table and retrieve 7 pieces of data starting from the 2nd piece of data. In the paging code, 7 represents how many pieces of content are displayed on each page, and 2 represents the number of page turns calculated by a formula. By replacing the value of "2" with different parameters, you can filter out different data.
index.php:
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>($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> '; }
The above code implements the simplest PHP paging effect:
Only click on the page turning number to display different page turning data. It can be further improved on this basis. As long as the basic principles are understood, subsequent work will be easier to develop.
conn.php code:
/* *连接数据库 进行相关查询操作 */ 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; } }
The function of conn.php is to complete the database connection and implement the data extraction operation method. Here I use pdo, and the code can be organized according to everyone's habits.
config.php:
/* *配置数据库信息 */ $cfg_dbhost='localhost'; $cfg_dbname='test'; $cfg_dbuser='root'; $cfg_dbpw='123456';
This example is only to illustrate the basic paging principle, and there are still many modifications before it can be used in practice.
Sample code download: http://www.superphp.cn/yuanma/332.html