900字范文,内容丰富有趣,生活中的好帮手!
900字范文 > php+mysql实现分页:上一页 下一页

php+mysql实现分页:上一页 下一页

时间:2020-05-12 05:53:50

相关推荐

php+mysql实现分页:上一页 下一页

mysql里将数据分页显示的语句是:limit 5,1。5表示检索开始位置,1表示显示1页

所以在php中要实现上一页,下一页就要传一个数据page给limit,就可以分页。

可以理解为三个步骤:

1)连接数据库,在前端将数据显示出来;

2)从前端传page(页码值)给php,这里也要判断符合范围内的页码:就是不小于1,不大于总页数;

3)php获得页码,做出判断,进行相应-+操作,改变limit值。

ps:数据都是已经在数据库中建好的,这里php只负责连接。

首先要知道如何在前端显示数据库中的信息:

php文件:

//连接数据库:$link = mysqli_connect("localhost","root","123456","test") or die ("错误:连接数据库失败"); //一次为:服务器,用户名,密码,库名mysqli_query($link,"set names 'utf8'"); //输出的编码方式,这句一定要有。//连接表:$sql = "SELECT * FROM wordspace WHERE sa_id IS NOT NULL"; //mysql查询语句$sqlcount = mysqli_query($link,$sql) or die ("查询失败"); //将其输出.$info = mysqli_fetch_ array($sqlcount);while($info){$result[ ] = $info; //传值给一个数组}mysqli_free_result($info); //查询完后要释放该表mysqli_close($link); //关闭数据库

将刚才获取数据库的数组显示在前端。

<table border="1"><tr><td>id</td><td>Price</td><td>customer</td></tr><!---用php将数据显示--><?php foreach($result as $val) {?><tr><td><?php echo $val['id'];?></td><td><?php echo $val[Price'];?></td><td><?php echo $val['customer'];?></td></tr><?php } ?></table>

将表的数据显示出来以后,在此基础上实现分页。

添加上一页,下一页连接,在此要做一个判断,使得传过去的值符合要求:

<!--显示首页和上一页的条件--><?php if($page > 1) {?> <a href="?page=1">首页</a><a href="?page=<?php echo $prevpage;">上一页</a><?php } ?><!--显示下一页和尾页的条件--><?php if($page < $ numpages) {?><a href="?page=<?php echo $nextpage;?">下一页</a><a href="?page=<?php echo $numpages;?>尾页<?php } ?>

php中连接数据库的语言要改动下:

//获取总记录数:$sqls = "SELECT COUNT(*) as totalFROM wordspace where sa_id IS NOT NULL";$sqlcount = mysqli_query($link,$sqls) od die("查询失败");$pagecount = mysqli_fetch_array($sqlcount);$pagecount = $pagecount['total'];mysqli_free_result($sqlcount); //查询完记得释放空间//获取页数,判断是否符合要求$page = intval($_GET['page']);if($page <=0) {$page= 1;}elseif($page > $pagecount){ $page = $pagecount; }//定义每页显示的页数:$pageshow = 5;$pagesize = ($page-1) * $pageshow;//计算总页数:$numpages = ceil($pagecount/$pageshow); //向上取整;//连接要显示的数据库$sql = "SELECT * FROM wordcpace where IS NOT NULL limit $pagesize,$pageshow";$sqlinfo = mysqli_query($sql);$divide = mysqli_fetch_array($sqlinfo)or die("分页查询失败");while($divide){$result[ ] = $divide;}

$prevpage = $page - 1;

$nextpage = $page + 1;

mysqli_free_result($sqlinfo);musqli_close($link); //最后要关闭数据库

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。