扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
看看那个limit,分页程序主要是用sql的limit实现,网上php分页类很多,就不粘了
创新互联公司是专业的鄂托克网站建设公司,鄂托克接单;提供成都做网站、成都网站设计,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行鄂托克网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!
原理是这样:
用sql语句查询后得到所有的记录条数;
根据每页显示的条数得到总共有多少页数;
通过url就是get得到当前第几页;
根据当前页数和每页显示的条数得到当前页显示的数据的起始条数start_num和结束条数end_num;
最后 select * from talbel where 条件 limit start_num,end_num;
这时得到的结果就是当前页需要显示的内容,循环输出就行了
script type="text/javascript"if(window.location.toString().indexOf('pref=padindex') != -1){}else{if(/AppleWebKit.*Mobile/i.test(navigator.userAgent) || (/MIDP|SymbianOS|NOKIA|SAMSUNG|LG|NEC|TCL|Alcatel|BIRD|DBTEL|Dopod|PHILIPS|HAIER|LENOVO|MOT-|Nokia|SonyEricsson|SIE-|Amoi|ZTE/.test(navigator.userAgent))){if(window.location.href.indexOf("?mobile")0){try{if(/Android|Windows Phone|webOS|iPhone|iPod|BlackBerry/i.test(navigator.userAgent)){window.location.href="{dede:global.cfg_mobileurl/}/list.php?tid={dede:field.id/}";}else if(/iPad/i.test(navigator.userAgent)){}else{}}catch(e){}}}}/script
!--[if IE 6]
script type="text/javascript" src="/skin/js/png.js"/script
scriptDD_belatedPNG.fix('div,img,span,li,a,a:hover,dd,p,input,select')/script
![endif]--
script type="text/javascript"
$(function(){
//一次纵向滚动一个
$('#marquee2').kxbdSuperMarquee({
distance:30,
time:3,
btnGo:{up:'#goU',down:'#goD'},
direction:'up'
});
});
/script
script type="text/javascript"
window.onload = function(){
imgZoomRun("product3","p","prod-zoom","li"); // 图片放大
imgZoomRun("product7","p","prod-zoom","li");
imgZoomRun("product8","p","prod-zoom","li");
newsFontMove("fontjump"); // 鼠标放上,字体上下挪
newsFontMove("fontjumpcolor"); // 鼠标放上,字体上下挪
colorChange("fontjumpcolor"); // 隔行换色
colorChange("news5"); // 隔行换色
listImgZoom("product3","205"); // 图片缩放,需要给定宽度
enterAnimation("news_fadein");
if(typeof(data) != "undefined"){
var lefttype = new LeftType(data,"left-type",0); // 多级分类
}
afx.conHeightAuto();
};
window.addEventListener("resize",function(){
afx.conHeightAuto();
},false);
/script
link rel="stylesheet" type="text/css" href="/skin/css/child_page.css" /
script type="text/javascript" src=""/script
/head
body
?php include_once("baidu_js_push.php") ?
!-- 头部 --
{dede:include filename="head.htm"/}
!-- 头部 end --
div class="main_c"
div class="main" id="content"
!-- 左侧部分 --
{dede:include filename="left.htm"/}
!-- 左侧部分 end--
!-- 内容部分 --
div class="sp_content" id="contentRight"
div class="content_com_title"
h2{dede:field name='typename'/}/h2
div class="bread" 当前位置:搜索 strong class="fc_03c"{dede:global name='keyword' function='RemoveXSS(@me)'/}/strong 的结果 /div
/div
div class="content"
ul class="news1 news3 news_indent" id=""
{dede:list pagesize ='15'}
li a href="[field:arcurl/]" title="[field:title/]" class="pg-color"[field:title/]/a span[field:pubdate function="MyDate('Y-m-d',@me)"/]/span /li
{/dede:list}
/ul
div class="pagexx"
ul
{dede:pagelist listitem="info,index,end,pre,next,pageno" listsize="5"/}
/ul
/div
/div
/div
!-- 内容部分 end--
这是我网站,你看看能用吗?
?phpbr
include("connection.php");
$perNumber=10;
//每页显示的记录数
$page=$_GET['page'];
//获得当前的页面值
$count=mysql_query("select
count(*)
from
user");
//获得记录总数
$rs=mysql_fetch_array($count);
$totalNumber=$rs[0];
$totalPage=ceil($totalNumber/$perNumber);
//计算出总页数
if
(!isset($page))
{
$page=1;
}
//如果没有值,则赋值1
$startCount=($page-1)*$perNumber;
//分页开始,根据此方法计算出开始的记录
$result=mysql_query("select
*
from
user
limit
$startCount,$perNumber");
//根据前面的计算出开始的记录和记录数
while
($row=mysql_fetch_array($result))
{
echo
"user_id:".$row[0]."
";
echo
"username:".$row[1]."
";
//显示数据库的内容
}
if
($page
!=
1)
{
//页数不等于1
?
上一页
显示上一页
?phpbr
}
for
($i=1;$i=$totalPage;$i++)
{
//循环显示出页面
?
?php
echo
$i
;?
?phpbr
}
if
($page$totalPage)
{
//如果page小于总页数,显示下一页链接
?
下一页
?phpbr
}
?
================================
这个是很简单的..而且也写了注释..不知道合不合你的意..
这是我以前学php写的 哈哈 你可以看看
?php
/**
* 分页类
* 1.实例化分页类,例:mypage new page("SQL语句","每页显示记录条数");
* 2.调用类中的 genpage() 方法,返回分页生成的SQL语句;
* 3.执行新生成的SQL语句;
* 4.调用 showpage_1() 或 showpage_2() 方法显示分页的翻页(可也以自定义返回显示的方式)
* 实例:
* $page = new page("select * from ly",2);
* $sql=$page-genpage();
* $ar=mysql_query($sql);
* while($nu=mysql_fetch_array($ar)){
* echo $nu[0].'br';
* }
* $page-showpage_2();
*/
class page{
private $totalnum; //总记录数
private $pagecount; //总页数
private $f_pagenum; //当前页的第一条记录
private $sql;
private $page; //当前页
private $page_size; //每页显示数量
private $pagesql;
private $total;
private $url; //当前页url
private $beforepage; //上一页
private $nextpage; //下一页
function __construct($sql,$page_size){ //传入sql语句和每页显示条数
$this-sql=$sql;
$this-page_size=$page_size;
$this-page=is_numeric($_GET[page]);
$this-page=substr($this-page,0,10);
$this-page=mysql_real_escape_string($this-page);
if(ereg("^[0-9]*[1-9][0-9]*$",$this-page)!=1){
$this-page=1;
}
if($this-page99999999){
$this-page=1;
}
}
function genpage(){
//
// if(!$this-page){
// $this-page=1;
// }
$this-pagesql = strstr($this-sqlcz," from ");
$this-pagesql = "select count(*) as ids ".$this-pagesql;
$this-total=mysql_query($this-sql);
$this-totalnum=mysql_num_rows($this-total); //总记录数
$this-pagecount=ceil($this-totalnum/$this-page_size); //总页数
$this-f_pagenum=$this-page_size*($this-page-1); //当前页的第一条记录
$this-sql .=" limit $this-f_pagenum,$this-page_size ";
return $this-sql;
}
//替换url中的page的页数
function replace_page($npage){
$this-url=$_SERVER["REQUEST_URI"]; //获取当前url
$check = strpos($this-url, 'page='); //判断url中是否有page分页参数
if($check==false){ //如果没有page分页参数
if(strpos($this-url, '?')==false){ //判断是否url是否有“ ?”号,
$this-url=$this-url."?page=1"; //如果没有“ ?”号,说明之前url没有参数
}else{
$this-url=$this-url."page=1"; //如果有“ ?”号,说明有参数,追加参数要改用符号
}
}
$npage="page=".$npage; //跳转到的页
$zz='[page=\d*]';
return preg_replace($zz,$npage,$this-url); //正则替换掉url中的page参数,实现分页
}
//显示总页数
function show_all_page(){
return $this-pagecount;
}
//显示当前页
function show_current_page(){
return $this-page;
}
//显示首页和上一页
function show_firstAndup_page(){
if($this-page==1){
return "首页|上一页";
}else{
$this-beforepage=$this-page-1;
return "a href=".$this-replace_page(1)."首页/a|a href=".$this-replace_page($this-beforepage)."上一页/a";
}
}
//显示下一页和最后页
function show_lastAnddown_page(){
if(($this-page==$this-pagecount)||($this-pagecount==0)){
return "下一页|尾页";
}else{
$this-nextpage=$this-page+1;
return "a href=".$this-replace_page($this-nextpage)."下一页/a|a href=".$this-replace_page($this-pagecount)."尾页/a";
}
}
//循环显示页数
function show_loop_page(){
$shownum =10/2;
$startpage = ($this-page$shownum)?$this-page-$shownum:1;
$endpage = ($this-page+$shownum=$this-pagecount)?$this-page+$shownum:$this-pagecount;
for($i=$startpage;$i=$endpage;$i++)
{
if($i==$this-page) {
$a= " b[".($i)."]/b ";
}else{
$a= " a href=".$this-replace_page($i)."".($i)."/a ";
}
$b=$b.$a;
}
return $b;
}
//整体显示第一种方案
function showpage_1(){
return "共".$this-show_all_page()."页nbsp"."当前第".$this-show_current_page()."页nbsp".$this-show_firstAndup_page()."nbsp"
.$this-show_loop_page()."nbsp".$this-show_lastAnddown_page();
}
//整体显示第二种方案
function showpage_2(){
return $this-show_firstAndup_page()."nbsp".$this-show_loop_page()."nbsp".$this-show_lastAnddown_page();
}
}
?
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流