php分页

<?php
include 'backend/conn.php'; $html = '<ul>'; //输出的html
$pageDataNum=3; //每页显示10行
$pageCount=0; //页数
$currentIndex=1;//当前第几页
$dataNum = 0; //数据条数
$curentDataIndex = 0; //当前第几行数据
$pre = 0; //上一页页数
$nex = 0; //下一页页数
$preImageName = ''; //是否到页码开始的尽头
$nexImageName = ''; //是否到页码结尾的尽头 $page = isset($_REQUEST['page'])?$_REQUEST['page']:1;
$page = daddslashes($page); $sql = "select count(1) as countNum from GsSpecialArticle";
$result = mysql_query($sql) or die(mysql_error());
if($row = mysql_fetch_object($result)){
$dataNum=$row->countNum;
}
$pageCount = ceil($dataNum/$pageDataNum);
$curentDataIndex = ($page-1) * $pageDataNum;
$curentDataIndex = $curentDataIndex > $dataNum ? ($curentDataIndex-$pageDataNum) : $curentDataIndex; $sql = "select * from GsSpecialArticle order by CreateTime desc limit ".$curentDataIndex.','.$pageDataNum.';';
$result = mysql_query($sql) or die(mysql_error());
while($row = mysql_fetch_object($result)){
$html.='<li>'.substr($row->CreateTime,0,10).'</span>'.'<span class="title"><a href="01maincontent.html?id=14&subId=17&specialId='.$row->Id.'">'.$row->ArticleTitle.'</span></a></li>';
} $pre = $page - 1;
$pre = $pre < 1 ? 1 : $pre;
$nex = $page + 1;
$nex = $nex > $pageCount ? $pageCount : $nex; $html .= '</ul><ul id="pages">'; if($page == 1){
$html .= '<li><span><image alt="" src="data:images/page_frist1.png"></image></span>
<span><image alt="" src="data:images/page_prev1.png"></image></span></span>';
for($i=1;$i<=$pageCount;$i++){
if(abs($i-$page)<7){
if($i == $page){
$html .= '<span style="color:red;">'.$i.'</span>';
}
else{
$html .= '<span><a href="#anchor" onclick="ChangePage('.$i.')">'.$i.'</image></a></span>';
}
}
}
$html .= '<span><a href="#anchor" onclick="ChangePage('.$nex.')"><image alt="" src="data:images/page_next.png"></image></a></span>
<span><a href="#anchor" onclick="ChangePage('.$pageCount.')"><image alt="" src="data:images/page_last.png"></image></a></span></li>';
}
else if($page == $pageCount){
//echo $page.'</br>';
//echo $pageCount.'</br>';
$html .= '<li><span><a href="#anchor" onclick="ChangePage(1)"><image alt="" src="data:images/page_frist.png"></image></a></span>
<span><a href="#anchor" onclick="ChangePage('.$pre.')"><image alt="" src="data:images/page_prev'.$preImageName.'.png"></image></a></span>';
for($i=1;$i<=$pageCount;$i++){
if(abs($i-$page)<7){
if($i == $page){
$html .= '<span style="color:red;">'.$i.'</span>';
}
else{
$html .= '<span><a href="#anchor" onclick="ChangePage('.$i.')">'.$i.'</image></a></span>';
}
}
}
$html .= '<span><image alt="" src="data:images/page_next1.png"></image></span><span><image alt="" src="data:images/page_last1.png"></image></span></li>';
}
else{
$html .= '<li><span><a href="#anchor" onclick="ChangePage(1)"><image alt="" src="data:images/page_frist.png"></image></a></span>
<span><a href="#anchor" onclick="ChangePage('.$pre.')"><image alt="" src="data:images/page_prev.png"></image></a></span>';
for($i=1; $i<=$pageCount ; $i++){
if(abs($i-$page)<4){
if($i == $page){
$html .= '<span style="color:red;">'.$i.'</span>';
}
else{
$html .= '<span><a href="#anchor" onclick="ChangePage('.$i.')">'.$i.'</image></a></span>';
}
}
}
$html .= '<span><a href="#anchor" onclick="ChangePage('.$nex.')"><image alt="" src="data:images/page_next.png"></image></a></span>
<span><a href="#anchor" onclick="ChangePage('.$pageCount.')"><image alt="" src="data:images/page_last.png"></image></a></span></li>';
} $html .= '</ul>'; echo $html;
?>
function ChangePage(page){
window.location.href = "01maincontent.html?id=14&subId=17&page="+page;
}

一个简单的php分页逻辑的更多相关文章

  1. 一个简单的php分页类代码(转载)

    入门级php分页类 原文地址:http://www.xfcodes.com/php/fenye/3608.htm 时间:2015-12-16 20:52:00来源:网络 php分页类. 复制代码代码如 ...

  2. 一个简单的CI分页类

    [php] view plaincopy <span style="font-size:16px;">/** * * 关于 页码有效性的判断需要加在 控制器中判断,即当 ...

  3. 简单的beego分页功能代码

    一个简单的beego分页小插件(源代码在最下面): 支持条件查询 支持参数保留 支持自定义css样式 支持表/视图 支持参数自定义 默认为pno 支持定义生成链接的个数 使用方式: 1)action中 ...

  4. 计算机程序的思维逻辑 (60) - 随机读写文件及其应用 - 实现一个简单的KV数据库

    57节介绍了字节流, 58节介绍了字符流,它们都是以流的方式读写文件,流的方式有几个限制: 要么读,要么写,不能同时读和写 不能随机读写,只能从头读到尾,且不能重复读,虽然通过缓冲可以实现部分重读,但 ...

  5. asp.net mvc4+mysql做一个简单分页组件(部分视图)

    在开始做mysql分页功能组件前,便设定的是要有一定可复用性.先在项目里Views文件夹下右键新建名为_PaginationComponent.cshtml,这里html及css我采用的bootstr ...

  6. 只是一个用EF写的一个简单的分页方法而已

    只是一个用EF写的一个简单的分页方法而已 慢慢的写吧.比如,第一步,先把所有数据查询出来吧. //第一步. public IQueryable<UserInfo> LoadPagesFor ...

  7. PHP分页初探 一个最简单的PHP分页代码实现

    PHP分页代码在各种程序开发中都是必须要用到的,在网站开发中更是必选的一项. 要想写出分页代码,首先你要理解SQL查询语句:select * from goods limit 2,7.PHP分页代码核 ...

  8. PHP分页初探 一个最简单的PHP分页代码的简单实现

    PHP分页代码在各种程序开发中都是必须要用到的,在网站开发中更是必选的一项. 要想写出分页代码,首先你要理解SQL查询语句:select * from goods limit 2,7.PHP分页代码核 ...

  9. asp.net core下一个简单的分页技术

    在做web应用的时候免不了要对数据进行分页,我最近在做asp.net core的开发的时候就遇到了这个需求,现在简单的记录一下: public class PaginatedList<T> ...

随机推荐

  1. json test

    public static void main(String[] args) { class B { String name; public String getName() { return nam ...

  2. 亿级别记录的mongodb分页查询java代码实现

    1.准备环境 1.1 mongodb下载 1.2 mongodb启动 C:\mongodb\bin\mongod --dbpath D:\mongodb\data 1.3 可视化mongo工具Robo ...

  3. Python 获取Kmeans聚类结果每一类的数据

    获取聚类结果中每一类的数据,该数据类型是DataFrame 思路:获取clf_KMeans的标签,我这里是聚三类,标签就是0,1,2 将Label转成Series类型,再筛选出指定标签的res0,我筛 ...

  4. i.mx6 Android6.0.1分析input子系统:测试

    getevent与sendevent工具 Android系统提供了getevent与sendevent两个工具供开发者从设备节点中直接读取输入事件或写入输入事件. 在这里,我们测试音量加和音量减按键 ...

  5. Linq中连接

    Linq中连接主要有组连接.内连接.左外连接.交叉连接四种.各个用法如下. 注:本文内容主要来自<Linq实战>,本例中用到的对象请见文章底部. 1. 组连接 组连接是与分组查询是一样的. ...

  6. NodeJS,MongoDB,Vue,VSCode 集成学习

    NodeJS,MongoDB,Vue,VSCode 集成学习 开源项目地址:http://www.mangdot.com

  7. .NET中的集合-ArrayList2

    数组特点:类型同统一,长度固定 集合常用操作 添加 遍历 移除 ArrayList可变长度数组,使用类似于数组 属性:capacity(集合中可以容纳元素的个数,翻倍增长)count(集合中实际存放的 ...

  8. WPF几种渐变色

      [LinearGradientBrush-- 主要属性: StartPoint 获取或设置线性渐变的二维起始坐标. EndPoint 获取或设置线性渐变的二维终止坐标. 例子: <Linea ...

  9. ssm集成redis

    身在一个传统的IT公司,接触的新技术比较少,打算年后跳槽,所以抽空学了一下redis. 简单的redis测试,咱们这边就不讲了,现在主要讲讲ssm集成redis的过程,因为现在项目用的就是ssm的框架 ...

  10. 一、hive安装(内置数据库derby)

    hive是一个数据仓库工具,建立在hadoop之上,它的存在是为了让大数据的查询和分析更加的方便.hive提供简单的sql查询功能,并最终转换为mapreduce任务执行. 一.环境 JDK1.8+官 ...