以下代码是PHP分页案例,测试通过,主要是PHP+mysql实现分页,代码来处百度空间,有兴趣看的话可以了解一下PHP是如何分页的?

<?php
$link = mysql_connect("localhost","root", "2855") //连接数据库
or die("连接不上服务器:".mysql_error());
mysql_select_db("aming");
$ittype=$_GET['ittype'];
if($ittype==""){
echo "请输入查询条件";
exit;
}
$PageSize = 4;//每页显示记录数
$StartRow = 0; //开始显示记录的编号
//获取需要显示的页数,由用户提交
if(empty($_GET['PageNo'])){ //如果为空,则表示第1页
if($StartRow == 0){
$PageNo = $StartRow + 1; //设定为1
}
}else{
$PageNo = $_GET['PageNo']; //获得用户提交的页数
$StartRow = ($PageNo-1) * $PageSize; //获得开始显示的记录编号 $StartRow = ($PageNo - 1) * $PageSize;
} //因为显示页码的数量是动态变化的
//假如总共有一百页,则不可能同时显示100个链接
//而是根据当前的页数显示一定数量的页面链接
//设置显示页码的初始值
if($PageNo % $PageSize == 0){
$CounterStart = $PageNo - ($PageSize - 1);
}else{
$CounterStart = $PageNo - ($PageNo % $PageSize) + 1;
} //显示页码的最大值
$CounterEnd = $CounterStart + ($PageSize - 1);
?> <html>
<head>
<title>分页显示记录</title>
<link rel="stylesheet" href="include/style.css" type="text/css"></head>
<?php
/*$itname=$_POST['itname'];
if($itname ==""){
echo "请输入查询条件";
exit;
}*/ if($ittype)
$TRecord = mysql_query("select *from pc_it where ittype=$ittype");
$result = mysql_query("select *from pc_it where ittype=$ittype ORDER BY id DESC LIMIT $StartRow,$PageSize"); //获取总记录数
$RecordCount = mysql_num_rows($TRecord); //获取总页数
$MaxPage = $RecordCount % $PageSize;
if($RecordCount % $PageSize == 0){
$MaxPage = $RecordCount / $PageSize;
}else{
$MaxPage = ceil($RecordCount / $PageSize);
}
?>
<body class="UsePageBg">
<table width="100%" border="0" class="InternalHeader">
<tr>
<td width="24%"><font size=4>分页显示记录</font></td>
<td width="76%">
<font size=4>
<?php print "总共 $RecordCount 条记录 - 当前页: $PageNo of $MaxPage" ?>
</font>
</td>
</tr>
</table>
<br>
<table width="100%" border="0" class="NormalTableTwo">
<tr>
<td class="InternalHeader">型号</td>
<td class="InternalHeader" >参数</td>
<td class="InternalHeader" >价格</td>
</tr>
<?php
$i = 1;
while ($row = mysql_fetch_array($result, MYSQL_NUM)) {
$bil = $i + ($PageNo-1)*$PageSize; // $bil = $i + ($PageNo-1)*$PageSize;
?>
<tr>
<td class="NormalFieldTwo" ><?php echo $row[1] ?></td>
<td class="NormalFieldTwo" ><?php echo $row[3] ?></td>
<td class="NormalFieldTwo" ><?php echo $row[4] ?></td>
</tr>
<?php
$i++;
}?>
</table><br><table width="100%" border="0" class="InternalHeader">
<tr>
<td> <div align="center">
<form action = search2.php method = GET >
<?php
echo "<font size=4>"; //显示第一页或者前一页的链接
//如果当前页不是第1页,则显示第一页和前一页的链接
if($PageNo != 1){
$PrevStart = $PageNo - 1;
print "<a href=search2.php?PageNo=1>首页 </a>: ";
print "<a href=search2.php?PageNo=$PrevStart&ittype=$ittype>上一页 </a>";
}
print " [ ";
$c=0;
//打印需要显示的页码
for($c=$CounterStart;$c<=$CounterEnd;$c++){
if($c < $MaxPage){
if($c == $PageNo){
if($c % $PageSize == 0){
print "$c ";
}else{
print "$c,";
}
}else
if($c % $PageSize == 0){
echo "<a href=search2.php?ittype=$ittype&PageNo=$c>$c</a> ";
//echo "<a href=search2.php?PageNo=$c&ittype=$ittype>$c</a> ";
}else{
echo "<a href=search2.php?ittype=$ittype&PageNo=$c>$c,</a> ";
//echo "<a href=search2.php?PageNo=$cittype=$ittype>$c</a> ,";
} //END IF
}else{
if($PageNo == $MaxPage){
print "$c ";
break;
}else{
echo "<a href=search2.php?ittype=$ittype&PageNo=$c>$c</a> ";
//echo "<a href=search2.php?PageNo==$c&ittype=$ittype>$c</a> ";
break;
}//END IF
}//END IF
}//NEXT
echo "] ";
if($PageNo < $MaxPage){ //如果当前页不是最后一页,则显示下一页链接
$NextPage = $PageNo + 1;
echo "<a href=search2.php?PageNo=$NextPage&ittype=$ittype>下一页</a>";
} //同时如果当前页补上最后一页,要显示最有一页的链接
if($PageNo < $MaxPage){
$LastRec = $RecordCount % $PageSize;
if($LastRec == 0){
$LastStartRecord = $RecordCount - $PageSize;
}
else{
$LastStartRecord = $RecordCount - $LastRec;
} print " : ";
echo "<a href=?PageNo=$MaxPage&ittype=$ittype>末页</a>";
} echo "<form action='search2.php' method='post'> ";
echo "转到第<input type=text name='PageNo' size='2' value=".$PageNo.">页";
echo "<input name=itname type=hidden value=".$ittype.">";
echo "<input type=submit name='Submit' value='Go'>";
echo "</form>";
echo "</font>"; ?>
</form>
</div>
</td>
</tr>
</table>
<?php
mysql_free_result($result);
mysql_free_result($TRecord);
?>
</body>
</html>

php分页例子实现读取mysql数据分页显示的更多相关文章

  1. Django读取Mysql数据并显示在前端

    一.首先按添加网页的步骤添加网页,我的网页名为table.html, app名为web table.html放到相应目录下, froms文件提前写好 修改views.py ? 1 2 3 4 5 6 ...

  2. Javascript实例技巧精选(6)—滚动鼠标中键读取Json数据分页显示网页内容

    >>点击这里下载完整html源码<< 截图如下: 滚动鼠标中键读取Json数据分页显示网页内容,关键的Javascript如下: <script type="t ...

  3. Spark使用Java读取mysql数据和保存数据到mysql

    原文引自:http://blog.csdn.net/fengzhimohan/article/details/78471952 项目应用需要利用Spark读取mysql数据进行数据分析,然后将分析结果 ...

  4. 原生PHP实现Mysql数据分页功能

    一. 思路整理 实现一个数据分页功能,需要有数据的总条数,每页展示的条数,和当前在第几页这三个参数 通过⌈总条数/每页展示的条数⌉可以得到总页数,比如某留言板有101条留言,每页展示10条,一那就需要 ...

  5. PHP MySQL数据分页

    SQL SELECT语句查询总是可能导致数千条记录.但是在一个页面上显示所有结果并不是一个好主意.因此,我们可以根据要求将此结果划分为多个页面.分页意味着在多个页面中显示您的查询结果,而不是仅将它们全 ...

  6. 关于C#读取MySql数据时,返回DataTable中某字段数据是System.Array[]形式

    我在使用C#(VS2008)读取MySql数据库(5.1版本)时,返回的DataTable数据中arrivalDate字段数据显示为System.Array[]形式(程序中没有对返回的数据进行任何加工 ...

  7. Spark:读取mysql数据作为DataFrame

    在日常工作中,有时候需要读取mysql的数据作为DataFrame数据源进行后期的Spark处理,Spark自带了一些方法供我们使用,读取mysql我们可以直接使用表的结构信息,而不需要自己再去定义每 ...

  8. R读取MySQL数据出现乱码,解决该问题的方法总结

    最终的解决办法直接看 4 我的思路: 我用的都是utf-8编码,电脑系统win7, MySQL-Front进行数据库的可视化. 1.我用的是RStudio,先去设置R的默认编码: Tools→Glob ...

  9. R语言读取MySQL数据表

    1.R中安装RODBC包 install.packages("RODBC") 2.在Windows系统下安装MySQL的ODBC驱动 注意区分32位和64位版本: http://d ...

随机推荐

  1. GIF Movie Gear逆向实战+注册代码+补丁

    GIF Movie Gear逆向实战+注册代码+补丁 准备 我是在windows 8.1 x64上进行的操作.有不足之处,还望大虾指出. 获取资源 网站下载:http://www.gamani.com ...

  2. 项目Beta冲刺(团队6/7)

    项目Beta冲刺(团队6/7) 团队名称: 云打印 作业要求: 项目Beta冲刺(团队) 作业目标: 完成项目Beta版本 团队队员 队员学号 队员姓名 个人博客地址 备注 221600412 陈宇 ...

  3. scrollTo(String text) and scrollToExact(String text) method of Android Driver not working

    Using the scrollTo(String text) and scrollToExact(String text) method of Android Driver. However the ...

  4. Python调用C/Fortran混合的动态链接库--中篇

    接下来,介绍一个简单的例子,从fortran中传递并返回一维自定义结构体数组到python注意点:1.fortran新标准支持可分配数组作为变量传入并在subroutine或function分配后返回 ...

  5. ArrayList遍历的4种方法

    public class ArrayListDemo { public static void main(String args[]){ List<String> list = new A ...

  6. CSS3 Selector

    每个前端工程师可能每天都会写一些css,其中选择器是很主要的一部分.但是,大家可能每天写的大多是#id,.class这样的选择器,这并不稀奇,但是如果我们了解并且熟用css3为我们提供的强大并且优雅的 ...

  7. Delphi之萝莉调教篇

    本文纯属技术交流.如果各位看官想与小生一起探讨萝莉的问题的话...PM我吧 关于Delphi的萝莉调教技术,很久以前就有大牛做过了...其实技术早掌握了只是觉得太无聊~估计大家也都会于是就没有写~既然 ...

  8. babel的安装和使用方法

    要使用Babel, 我们需要nodeJS的环境和npm, 主要安装了nodeJS, npm就默认安装了 , 现在安装nodeJS很简单了, 直接下载安装就好了: 安装es-checker 在使用Bab ...

  9. install build tools 25.0.2 and sync the project

    install build tools 25.0.2 and sync the project in android studio bundle.gradle,将buildToolsVersion修改 ...

  10. WJC上学记

    WJC上学记题目描述:WJC为了追求YHY,决定考上树人,但是,愚蠢的他没有足够好的成绩,只能靠自己的亲戚来帮忙.但是由于他足够愚蠢,连自己的亲戚都不认识,仁慈而被树人优录的Geek_du决定帮助他. ...