php 新闻分页,php原生开发新闻站之新闻列表分页
我们上一节课给大家讲述了新闻列表的功能制作,上节课中我们新闻列表页下面有一个分页功能!那么我们今天就来给大家介绍一下关于分页实现的制作过程!
首先我们创建一个php文件page.php,这个文件里面我们放制作分页的代码!
第一步:一样,就是连接数据库!// 显示所有的错误
error_reporting(E_ALL & ~E_NOTICE );
// 连接mysql数据库
$link = mysqli_connect('localhost','root', 'root');
if (!$link) {
echo "connect mysql error!";
exit();
}
// 选中数据库 news为数据库的名字
$db_selected = mysqli_select_db($link, 'news');
if (!$db_selected) {
echo "
selected db error!";
exit();
}
// 设置mysql字符集 为 utf8
$link->query("set names utf8");
第二步:分页功能的实现,在哪个列表里我们就需要查询哪个数据表,我们是新闻的分页,那么我们SQL语句就要查新闻的表// 查询新闻表中的数据
$sql = "select * from new where 1 "; // 查询语句
$sql_count = "select count(*) as amount from new where 1 "; // 统计总记录数
$sql .= "order by id asc";
接着就是获取总记录条数:// 获取总记录条数
$result_amount = mysqli_query($link, $sql_count);
$arr_amount = mysqli_fetch_array(mysqli_query($link, $sql_count), MYSQL_ASSOC);
// 总记录条数
$amount = $arr_amount['amount'];
然后设置总页数,以及总页码// 每页的记录条数
$page_size = 4;
// 总页码
$max_page = ceil( $amount / $page_size );
大家都知道分页有个公式算法,我们就根据这个公式来计算上一页,下一页,尾页!// 获取当前页码
$page = intval($_GET['page']); // 获取page值,并转成int
if( $page <= 0 || $page > $max_page){ // 如果page值小于0,或是大于最大页码
$page = 1;
}
// 上一页
$pre_page = $page -1;
if( $pre_page
$pre_page = 1;
}
// 下一页
$next_page = $page + 1;
if( $next_page > $max_page ){ // 如果下一页大于最大页码
$next_page = $max_page;
}
// 分页计算, 计算分页的offset
$offset = ($page - 1 ) * $page_size;
$sql .= " limit $offset, $page_size ";
到这里我们的分页代码就写完了,然后在新闻列表页 引入这个分页文件<?php
include_once "../common/page.php";
?>
最后在新闻列表页的下面找到分页的位置,输出分页
首页
if( $page > 1 ){
?>
">上一页
}
if( $page
?>
">下一页
}
?>
">末页
/ 总页码 <?php echo $max_page;?>页 当前页码 <?php echo $page;?>页
OK!分页就制作完成了!
说明:这里我的可能有点麻烦,大家也可以在网站下载分页类,然后直接调用!但是你要知道分页实现的原理~
php 新闻分页,php原生开发新闻站之新闻列表分页相关推荐
- Flutter开发之《网易新闻客户端Flutter混合开发实践》笔记(52)
摘自:网易新闻客户端Flutter混合开发实践 引言 网易新闻项目本身很庞大,业务繁多,全部改为Flutter实现肯定是不现实的,在使用Flutter的前期阶段,我们挑选了相对独立的几个模块,在现有工 ...
- 新闻资讯小程序开发实践
新闻资讯小程序开发实践 在腾讯小程序上线一周年之际,公司又决定把App产品部分内容在小程序上实现.就在小程序刚上线的时候,公司也有一款产品进行了小程序的研发,但后续没有持续的维护.这过了一年的时间,微 ...
- 雪狐新闻APP全程实战开发(Vue+ThinkPHP5+APICloud)
雪狐新闻APP全程实战开发(Vue+ThinkPHP5+APICloud) 课程介绍 利用thinkphp5独家研发的新闻系统,结合apicloud和vue.js来开发属于自己的新闻app.PHP开发 ...
- IOS开发简易的网易新闻页面
IOS开发简易的网易新闻页面 这是简易的网易新闻,使用swift语法去写的 git 仓库地址: https://e.coding.net/lujun1/wangyijianyixinwenswiftb ...
- IOS开发基础之网易新闻UICollectionView的使用第3天
IOS开发基础之网易新闻UICollectionView的使用第3天 由于第3天的UICollectionView 并不实现,我查阅相关资料,也没解决,先从本地的plist加载的数据,不是网络的上的数 ...
- IOS开发基础之网易新闻JSON转模型数组第2天
IOS开发基础之网易新闻JSON转模型数组第2天 // // HMHeadline.h // 01-网易新闻搭建 // // Created by 鲁军 on 2021/4/11. //#import ...
- IOS开发基础之网易新闻环境搭建异步请求json,AFN网络封装第1天
IOS开发基础之网易新闻环境搭建异步请求json,AFN网络封装第1天 视频资料是2015年的,但是AFN是导入框架的关键文件,我尝试使用cocoapods安装最新的AFN,虽然成功了,但是版本太高, ...
- mysql创建新闻发布时间_基于PHP+mysql实现新闻发布系统的开发
新闻发布系统 1. 系统简介 一个简单的新闻系统,包含了四个功能,增删改查,利用PHP语言,结合了MySQL数据库,开发工具用的是Dreamweaver. 2.数据库设计 -- 数据库: `newsd ...
- php新闻表怎么分页,新闻列表分页类求助
新闻列表分页类求助 include("conn.php"); $sql="select * from news_content order by news_id Desc ...
最新文章
- 信息系统项目管理师-信息系统综合测试与管理核心知识思维脑图
- (大纲)三小时学会openCV
- 七、Linux 常用 Shell 命令,控制台的快捷键以及 Shell 编程(上)
- DWR第四篇之对象传参
- SpringCloud的Hystrix(五) Hystrix机制
- Photoshop插件-HDR(二)-脚本开发-PS插件
- 史上最全正则表达式语法,文末附常用表达式!
- 如何成为优秀的程序员?
- 感觉中国程序员前景一片灰暗,是这样吗?Android开发工程师为你答疑解惑
- android 仿ios数字密码解锁界面
- 抖音直播运营分析:深入解读直播带货运营那些专业术语
- 苹果ANCS协议分析
- 棋牌游戏开发过程中遇到的困难 如何解决
- Tableau中国地图
- Android 利用MediaPlayer实现音乐播放
- KMP算法求循环节,为什么能求循环节
- 查询oracle表空间是否满了,oracle表空间满了,导致数据不能写入数据库
- java小型超市系统_Java小型超市收银系统
- 如何实现get接口与post接口转换,get接口与post接口如何转换
- R 绘制渐变中国地图及添加南海九段图