一个简单的php分页逻辑
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分页逻辑的更多相关文章
- 一个简单的php分页类代码(转载)
入门级php分页类 原文地址:http://www.xfcodes.com/php/fenye/3608.htm 时间:2015-12-16 20:52:00来源:网络 php分页类. 复制代码代码如 ...
- 一个简单的CI分页类
[php] view plaincopy <span style="font-size:16px;">/** * * 关于 页码有效性的判断需要加在 控制器中判断,即当 ...
- 简单的beego分页功能代码
一个简单的beego分页小插件(源代码在最下面): 支持条件查询 支持参数保留 支持自定义css样式 支持表/视图 支持参数自定义 默认为pno 支持定义生成链接的个数 使用方式: 1)action中 ...
- 计算机程序的思维逻辑 (60) - 随机读写文件及其应用 - 实现一个简单的KV数据库
57节介绍了字节流, 58节介绍了字符流,它们都是以流的方式读写文件,流的方式有几个限制: 要么读,要么写,不能同时读和写 不能随机读写,只能从头读到尾,且不能重复读,虽然通过缓冲可以实现部分重读,但 ...
- asp.net mvc4+mysql做一个简单分页组件(部分视图)
在开始做mysql分页功能组件前,便设定的是要有一定可复用性.先在项目里Views文件夹下右键新建名为_PaginationComponent.cshtml,这里html及css我采用的bootstr ...
- 只是一个用EF写的一个简单的分页方法而已
只是一个用EF写的一个简单的分页方法而已 慢慢的写吧.比如,第一步,先把所有数据查询出来吧. //第一步. public IQueryable<UserInfo> LoadPagesFor ...
- PHP分页初探 一个最简单的PHP分页代码实现
PHP分页代码在各种程序开发中都是必须要用到的,在网站开发中更是必选的一项. 要想写出分页代码,首先你要理解SQL查询语句:select * from goods limit 2,7.PHP分页代码核 ...
- PHP分页初探 一个最简单的PHP分页代码的简单实现
PHP分页代码在各种程序开发中都是必须要用到的,在网站开发中更是必选的一项. 要想写出分页代码,首先你要理解SQL查询语句:select * from goods limit 2,7.PHP分页代码核 ...
- asp.net core下一个简单的分页技术
在做web应用的时候免不了要对数据进行分页,我最近在做asp.net core的开发的时候就遇到了这个需求,现在简单的记录一下: public class PaginatedList<T> ...
随机推荐
- PTA (Advanced Level) 1023 Have Fun with Numbers
Have Fun with Numbers Notice that the number 123456789 is a 9-digit number consisting exactly the nu ...
- Perl入门
Perl 是一门开源的脚本语言,由 Larry Wall 所创造,该语言以实用,快速开发为主要目标,与当前流行的面向对象结构化编程有些格格不入,但这并不妨碍 Perl 被广泛流传和使用,世界范围内围绕 ...
- 【转】MVC Model建模及Entity Framework Power Tool使用
MVC如使用Code-First代码优先约定,先建实体类,再根据实体类创建数据库. 在创建实体类后,新建一个数据上下文类,如下: publicclassMusicStoreDB : DbContext ...
- 相对布局--RelativeLayout
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android=&q ...
- MySQL中使用SHOW PROFILE命令分析性能的用法整理(配合explain效果更好,可以作为优化周期性检查)
这篇文章主要介绍了MySQL中使用show profile命令分析性能的用法整理,show profiles是数据库性能优化的常用命令,需要的朋友可以参考下 show profile是由Jerem ...
- &&和||的操作符妙用(javascript)
前言 &&逻辑与和||逻辑或,它们既可以返回一个布尔值,又可以返回指定操作数的值,这个值是非布尔型的. MDN api参考 Section1 布尔运算 首先,我们明确一下基础知识. 能 ...
- JavaScript es6 class类的理解。
本着互联网的分享精神,在本篇文章我将会把我对JavaScript es6 class类的理解分享给大家. JavaScript 类主要是 JavaScript 现有的基于原型的继承的语法糖. 类语法 ...
- String.IsNullOrEmpty 与 String.IsNullOrWhiteSpace
String.IsNullOrEmpty 指示指定的字符串是否为 null 或者 空字符串: 返回值:如果参数为 null 或者 空字符串("" .String.Empty),结果 ...
- 使用nodeJs在本地搭建最简单的服务
在搭建web服务器之前,需要先安装node.js 安装后node.js,接下来就需要安装http的镜像文件 一:本机安装软件 下载最新的NodeJs,进行安装.一直点击下一步就可以了.然后就可以查看安 ...
- [编程] C语言的二级指针
用C语言指针作为函数返回值:C语言允许函数的返回值是一个指针(地址),我们将这样的函数称为指针函数函数运行结束后会销毁在它内部定义的所有局部数据 #include<stdio.h> #in ...