php分页笔记

2020-12-13 05:42

阅读:238

这是一句很简单的mysql查询语句,它的作用是从一个名叫table的表里提取10条数据,并且把所有字段的值都获得。

这里的关键是在“limit 0,10”,表示的是以0为起点,查询后面的10条数据

如果要显示id=11到id=20的数据怎么进行操作呢?

Select * from table limit 10,10

想显示其他的数据只需把第一个参数的值修改就行了

 

怎样获取$page的值?推荐使用$page    = $_GET[‘page‘]; 即可获取页面的值

具体操作详见代码:

/*连接数据库操作*/

$conn = mysql_connect("localhost","root","") or die ("链接服务器错误".mysql_error());
mysql_select_db("db_book",$conn) or die ("链接数据库错误!");

 

/*分页原理*/

$sql1 = "select * from db_liuyan";    //查询表明为db_liuyan的所有数据

$result = mysql_query($sql1);

$number = mysql_num_rows($result); //获取表中的总记录条数

$pagesize = 10; //每页显示10条记录

 

/*怎样获取共有多少页?使用ceil函数,相除如果有余数,会自动进1,意思就是如果有26条数据,每页显示10条,则会计算出3页*/

$pagetotal = ceil($number/$pagesize); //计算共有多少页

$pageno = $_GET[‘pageno‘]; // $pageno 表示显示页面显示的页数 

 

$start = $pagesize*($page-1);          //计算显示页从哪条记录开始,如果$page为1,则从id=0的记录开始,如果为2则从id=10的记录开始
$sql2 = "select * from `db_liuyan` order by `id` asc limit $startno,$pagesize";  

//在这里要注意的是,查询的时候要注意要按照顺序进行排序,asc 按照正序  desc按照倒序排列
$result2 = mysql_query($sql2);

 

/*在做分页的时候i,出现了一些问题,如果只有一页记录,点击上一页或者下一页的时候,就会继续跳转到下一页,但是我只有一页的记录啊,

我就利用了if~else解决了这个问题*/

 /*如果$page为空,则把1赋值给$page*/

if($page==""){
  $pageno = 1;
}
  echo "首页";


if($pageno==1){
  echo "上一页";
}
else{
  echo "上一页";
}

 

/*利用for循环,显示1 2 3···进行跳转*/
for($i=1;$i  $show=($i!=$pageno)?"$i":"$i";
echo "$show";
}


if($pageno == $pagetotal){
  echo "下一页";
}
else{
  echo "下一页";
}
  echo "末页";

 

?>

 


评论


亲,登录后才可以留言!