首页 > 后端开发 > 正文

php自己写框架封装分页方法 thinkphp 怎么自己设置分页代码

2023-10-05 17:10:38 | 我爱编程网

今天我爱编程网小编整理了php自己写框架封装分页方法 thinkphp 怎么自己设置分页代码相关信息,希望在这方面能够更好帮助到大家。

php自己写框架封装分页方法 thinkphp 怎么自己设置分页代码

php分页代码 怎么写

Web开发是今后分布式程式开发的主流,通常的web开发都要涉及到与数据库打交道,客户端从服务器端读取通常都是以分页的形式来显示,一页一页的阅读起来既方便又美观。所以说写分页程序是web开发的一个重要组成部分,在这里,我们共同来研究分页程序的编写。

一、分页程序的原理

分页程序有两个非常重要的参数:每页显示几条记录($pagesize)和当前是第几页($page)。有了这两个参数就可以很方便的写出分页程序,我们以MySql数据库作为数据源,在mysql里如果要想取出表内某段特定内容可以使用的 T-SQL语句:select * from table limit offset,rows来实现。这里的offset是记录偏移量,它的计算方法是offset=$pagesize*($page-1),rows是要显示的记录条数,这里就是$page。也就是说select * from table limit 10,10这条语句的意思是取出表里从第11条记录开始的20条记录。

二、主要代码解析

$pagesize=10; //设置每一页显示的记录数
$conn=mysql_connect("localhost","root",""); //连接数据库
$rs=mysql_query("select count(*) from tb_product",$conn); //取得记录总数$rs
$myrow = mysql_fetch_array($rs);
$numrows=$myrow[0];

//计算总页数

$pages=intval($numrows/$pagesize);

//判断页数设置

if (isset($_GET['page'])){
$page=intval($_GET['page']);
}
else{
$page=1; //否则,设置为第一页
}

三、创建用例用表myTable

create table myTable(id int NOT NULL auto_increment,news_title varchar(50),news_cont text,add_time datetime,PRIMARY KEY(id))

四、完整代码

<html>
<head>
<title>php分页示例</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>

<body>
<?php
$conn=mysql_connect("localhost","root","");
//设定每一页显示的记录数
$pagesize=1;
mysql_select_db("mydata",$conn);
//取得记录总数$rs,计算总页数用
$rs=mysql_query("select count(*) from tb_product",$conn);
$myrow = mysql_fetch_array($rs);
$numrows=$myrow[0];
//计算总页数

$pages=intval($numrows/$pagesize);
if ($numrows%$pagesize)
$pages++;
//设置页数
if (isset($_GET['page'])){
$page=intval($_GET['page']);
}
else{
//设置为第一页
$page=1;
}
//计算记录偏移量
$offset=$pagesize*($page - 1);
//读取指定记录数
$rs=mysql_query("select * from myTable order by id desc limit $offset,$pagesize",$conn);
if ($myrow = mysql_fetch_array($rs))
{
$i=0;
?>
<table border="0" width="80%">
<tr>
<td width="50%" bgcolor="#E0E0E0">
<p align="center">标题</td>
<td width="50%" bgcolor="#E0E0E0">
<p align="center">发布时间</td>
</tr>
<?php
do {
$i++;
?>
<tr>
<td width="50%"><?=$myrow["news_title"]?></td>
<td width="50%"><?=$myrow["news_cont"]?></td>
</tr>
<?php
}
while ($myrow = mysql_fetch_array($rs));
echo "</table>";
}
echo "<div align='center'>共有".$pages."页(".$page."/".$pages.")";
for ($i=1;$i< $page;$i++)
echo "<a href='fenye.php?page=".$i."'>[".$i ."]</a> ";
echo "[".$page."]";
for ($i=$page+1;$i<=$pages;$i++)
echo "<a href='fenye.php?page=".$i."'>[".$i ."]</a> ";
echo "</div>";
?>
</body>
</html>

五、总结

本例代码在windows2000 server+php4.4.0+mysql5.0.16上运行正常。该示例显示的分页格式是[1][2][3]…这样形式。假如想显示成“首页 上一页 下一页 尾页”这样形式,请加入以下代码:

$first=1;
$prev=$page-1;
$next=$page+1;
$last=$pages;

if ($page > 1)
{
echo "<a href='fenye.php?page=".$first."'>首页</a> ";
echo "<a href='fenye.php?page=".$prev."'>上一页</a> ";
}

if ($page < $pages)
{
echo "<a href='fenye.php?page=".$next."'>下一页</a>
echo "<a href='fenye.php?page=".$last."'>尾页</a> ";
}

其实,写分页显示代码是很简单的,只要掌握了它的工作原理。希望这篇文章能够带给那些需要这方面程序web程序员的帮助。

php自己写框架封装分页方法 thinkphp 怎么自己设置分页代码我爱编程网

php分页功能怎么实现


在网站中,如果list页内容太多,一般会设置分页功能,今天我们一起来研究一下分页原理,通过一个小案例实现这个功能.

分页原理
分页显示,将从mysql数据库取出的数据有规律的一段段展示,利用sql语句中的limit将它的起始数据跟页数绑定,根据页数去数据库取数据 (推荐学习:PHP视频教程)
实现流程
1.获取当前url字符串,并用parse_url解析得到url数组
2.连接服务器,获取list页将要展示的内容集合,统计总共展示的条数,进而算出总共多少页内容
3.判断页面是否是提交状态,如果不是默认为第一页$pageval
4.将计算的limit起始位置赋值给变量$page
5.使用$page和$pageSize去数据库取数据
6.循环便利得数据集合,输出展示在页面上
具体代码如下
$url = $_SERVER['REQUEST_URI'];
$url = parse_url($url);
$url = $url['path'];
$pageSize = 4;//连接服务器$link = mysqli_connect('127.0.0.1','root',12345678,'bbs');
$res = mysqli_query($link,'select * from fenye');
$num = mysqli_num_rows($res);
$pageNum = ceil($num/$pageSize);//判断页面是否是提交状态if ( isset($_GET['page']) && $_GET['page'] >1) {
$pageVal = $_GET['page'];
}else {
$pageVal = 1;
}//计算起始位置$page = ($pageVal-1)*$pageSize;//去数据库取数据$res = $mysqli_query($link,"select * from fenye limit $page,$pageSize");//如果$res有值,则循环便利结果展示输出在页面if ($res) { while( $row = mysqli_fetch_assoc($res) ) { echo $row['name']. '|'.$row['age'].'<br/>';
}
}//html添加页数部分<a href="?page=1">1</a>;
<a href="?page=2">2</a>;
<a href="?page=3">3</a>;
<a href="?page=4">4</a>;
<a href="?page=5">5</a>;
总共<?php echo $pageNum; ?>页,当前在<?php echo $pageVal;?>页

php自己写框架封装分页方法 thinkphp 怎么自己设置分页代码

thinkphp 怎么自己设置分页代码

import("@.ORG.Page"); //导入分页类
$Form = M('Form');
$count = $Form->count(); //计算总数
$Page = new Page($count, 5);
$list = $Form->limit($Page->firstRow. ',' . $Page->listRows)->order('id desc')->select();
// 模拟设置分页额外传入的参数
$Page->parameter = 'search=key&name=thinkphp';
// 设置分页显示
$Page->setConfig('header', '条数据');
$Page->setConfig('first', '<<');
$Page->setConfig('last', '>>');
$page = $Page->show();

以上,就是我爱编程网小编给大家带来的php自己写框架封装分页方法 thinkphp 怎么自己设置分页代码全部内容,希望对大家有所帮助!
与“php自己写框架封装分页方法 thinkphp 怎么自己设置分页代码”相关推荐
自己封装php框架 php如何封装方法
自己封装php框架 php如何封装方法

php如何封装方法【相关学习推荐:php图文教程】php封装方法的方法:1、先把代码写好,能出功能了,就把该代码全部剪切过去事先创建好的类中,其中将需要的参数也写好,当然,如果你逻辑清晰的话,也可以直接封装好调用。如果是想操作页面的文本框、下拉框等等,传输的参数就不是字符串类型的了,而是创建该页面对应的标签。给你们举个简单的列子:2、就是该标签,在封装方法的时候一定要声明是该

2023-09-13 18:15:05
php封装自己的框架 php如何封装方法
php封装自己的框架 php如何封装方法

php数据库封装哪个框架好(php封装类)PHP随便你用什么框架都不是问题,重点是玩的熟悉了后,PHPER自己做出类似YII,CI的框架都不是问题,而且现在成熟框架来说,也有很多缺点比如ZENDFRAMEWORK,走的是MVC套路,但是实际上低成本的框架不一定是这个结构,而是后BS时代的近似于CS结构的那种通信方式,代码越少,开发周期就会变短YII的问题是过度封装,仔细阅读代码,就会

2023-09-16 03:40:34
php框架分页源码 php分页代码 怎么写
php框架分页源码 php分页代码 怎么写

php分页代码?php&lt;brinclude("connection.php");$perNumber=10;//每页显示的记录数$page=$_GET['page'];//获得当前的页面值$count=mysql_query("selectcount(*)fromuser");//获得记录总数$rs=mysql_fetch_array($co

2023-09-14 01:57:27
php自己封装mvc框架代码 php mvc框架的理解
php自己封装mvc框架代码 php mvc框架的理解

如何用PHP实现自己的MVCMVC三个字母的含义:M:Model模型,负责数据库操作。V:View视图,负责调用Model调取数据,再调用模板,展示出最终效果。C:Controller控制器,程序的入口,决定改调用哪个View,并告诉View该做什么。下面是一个超级简单的MVC结构实现:Controller.phpinclude 'Model.php';include 'View.php';

2023-09-30 19:41:05
php封装自己的框架 php数据库封装哪个框架好(php封装类)
php封装自己的框架 php数据库封装哪个框架好(php封装类)

php如何封装方法【相关学习推荐:php图文教程】php封装方法的方法:1、先把代码写好,能出功能了,就把该代码全部剪切过去事先创建好的类中,其中将需要的参数也写好,当然,如果你逻辑清晰的话,也可以直接封装好调用。如果是想操作页面的文本框、下拉框等等,传输的参数就不是字符串类型的了,而是创建该页面对应的标签。给你们举个简单的列子:2、就是该标签,在封装方法的时候一定要声明是该

2023-09-16 03:40:44
php框架封装数据库 如何写一个属于自己的数据库封装(2)
php框架封装数据库 如何写一个属于自己的数据库封装(2)

怎么用php建立一个数据库怎么用php建立一个数据库?首先打开我们的php编辑器,在新建好的文件中写上注释内容。新建一个函数,命名为create_data设置用户名,密码和主机名的变量,并给他们赋值。$Username="root";$Password="";$servernmae="localhost";连接数据库。连接好数据库之后,开始写创建数据库的s

2023-09-27 21:36:04
php框架实现分页源码 PHP显示很多数据库信息,如何自动分页呢?代码
php框架实现分页源码 PHP显示很多数据库信息,如何自动分页呢?代码

PHP显示很多数据库信息,如何自动分页呢?代码PHP代码如下:/*Author:默默Date:2006-12-03*/$page=isset($_GET['page'])?intval($_GET['page']):1;//这句就是获取page=18中的page的值,假如不存在page,那么页数就是1。$num=10;//每页显示10条数据$db=mys

2023-09-17 01:43:23
php有分页功能的框架 thinkPHP3.2.3模板怎么增加分页设置
php有分页功能的框架 thinkPHP3.2.3模板怎么增加分页设置

如何使用PHP和MySQL创建个性的网站分页怎么使用PHP和MySQL创建个性的网站分页?分页起着重要的作用,在任何Web应用程序,具有足够大的数据被分成页。它不仅外观整洁,但也提高了一个网页的加载时间。所以,分页是很重要的一个改进的用户界面,并节省服务器资源。在本教程中,我会告诉你一个简怎么使用PHP和MySQL创建个性的网站分页?分页起着重要的作用,在任何

2023-09-26 05:04:38