php翻页代码
Ⅰ 像百度这样的php分页代码,跪求
类似google和风格的分页php代码!
<?
$setid = 0;
$list_num=50;
$list_page_num=20;
// 计算页数
$pages = ceil($num/$list_num);
$page = ceil($pages/$list_page_num);
if ($setid > 0):
$setpage1 = ceil($setid/$list_num);
$setpage = ceil(($setpage1+1)/$list_page_num);
else:
$setpage = 1;
endif;
if ($pages > $list_page_num):
$pagenum = $list_page_num;
else:
$pagenum = $pages;
endif;
$issetid = ceil(($setid+1)/$list_num);
$issetpage = $issetid % $list_page_num;
// 第一页
if ($setpage > 1):
echo "[<a title='第一页' href='当前页.php?nj=".$nj1."&setpage=1&setid=0'><font face=Verdana color=#006699 style=\"font-size: 8pt;\">1</font></a>]...\n";
endif;
// 上一列
if ($setpage > 1):
$lastpage = $setpage-1;
$lastsetid = ($setpage-2)*$list_page_num*$list_num;
echo "[<a title='上一列' href='当前页.php?nj=".$nj1."&setpage=".$lastpage."&setid=".$lastsetid."'><font face=Verdana color=#006699 style=\"font-size: 8pt; \"><<</font></a>] - \n";
endif;
// 上一页
if ($setid > 0):
if ($issetpage == 1):
$newsetpage = $setpage-1;
else:
$newsetpage = $setpage;
endif;
$presetid = $setid-$list_num;
echo "<a title='上一页' href='当前页.php?nj=".$nj1."&setpage=".$newsetpage."&setid=".$presetid."'><font face=Verdana color=#006699 style=\"font-size: 8pt; \">[<<]</font></a> \n";
endif;
// 列出页
$i1 = ($setpage-1)*$list_page_num;
for ($i=$i1; $i<($i1+$pagenum) && $i<$pages; $i++)
{
$newsetid=$list_num*$i;
if (($setid/$list_num) == $i):
echo "<font color=red>[".($i+1)."]</font>\n";
else:
echo "<a href='当前页.php?nj=".$nj1."&setpage=".$setpage."&setid=".$newsetid."'><font face=Verdana color=#006699 style=\"font-size: 8pt;\">[".($i+1)."]</font></a>\n";
endif;
}
// 下一页
if ($pages!=0 && ($setid/$list_num+1)!=$pages && ($setid/$list_num+1)<=$pages||$setid==1):
if ($list_page_num-$issetpage == 0 || $issetpage == 0):
$newsetpage = $setpage+1;
else:
$newsetpage = $setpage;
endif;
$newsetid = $setid+$list_num;
echo "<a title='下一页' href='当前页.php?nj=".$nj1."&setpage=".$newsetpage."&setid=".$newsetid."'><font face=Verdana color=#006699 style=\"font-size: 8pt; \">[>]</font></a> \n";
endif;
// 下一列
if ($pages!=0 && $pages>$list_page_num && $setpage<$page):
$nextpage = $setpage+1;
$nextsetid = $setpage*$list_page_num*$list_num;
echo "- <a title='下一列' href='当前页.php?nj=".$nj1."&setpage=".$nextpage."&setid=".$nextsetid."'><font face=Verdana color=#006699 style=\"font-size: 8pt; \">[>>]</font></a>\n";
endif;
// 最后一页
if ($pages>$list_page_num && $setpage<$page):
$lastpage = $list_num*($pages-1);
echo "...<a title='最后一页' href='当前页.php?nj=".$nj1."&setpage=".$page."&setid=".$lastpage."'><font face=Verdana color=#006699 style=\"font-size: 8pt; \">[".$pages."]</font></a>\n";
endif;
?>
Ⅱ php翻页源码
我收集的开源代码下载网站
http://www.ithao123.com/itjishufenlei/codedownload.html
1、源码之家
2、代码中国网
3、源码天下
4、站长网
5、源码网
6、中国站长下载-源码下载
7、ASP300
8、ASP酷程序下载中心
9、洪越源代码
10、114软件源码下载
11、中国代码网
12、曾子源码软件下载
13、锋网源码
15、中华源码网
16、源码爱好者
18、动站源码下载
20、CodeGuru - Visual C++
参考资料:http://www.ithao123.com
Ⅲ PHP分页代码
<?php
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]."<br>";
echo
"username:".$row[1]."<br>";
//显示数据库的内容
}
if
($page
!=
1)
{
//页数不等于1
?>
<a
href="fenye.php?page=<?php
echo
$page
-
1;?>">上一页</a>
<!--显示上一页-->
<?php
}
for
($i=1;$i<=$totalPage;$i++)
{
//循环显示出页面
?>
<a
href="fenye.php?page=<?php
echo
$i;?>"><?php
echo
$i
;?></a>
<?php
}
if
($page<$totalPage)
{
//如果page小于总页数,显示下一页链接
?>
<a
href="fenye.php?page=<?php
echo
$page
+
1;?>">下一页</a>
<?php
}
?>
================================
这个是很简单的..而且也写了注释..不知道合不合你的意..
Ⅳ PHP,在html中怎样实现分页代码:首页、下一页、上一页、尾页
给你个实例看看吧:
<?php
include("conn/conn.php");
$pagesize=2;
$url=$_SERVER["REQUEST_URI"];
$url=parse_url($url);
$url=$url['path'];
$sql="select * from tb_info ";
$query=mysql_query($sql);
//print_r($query);
$rows=mysql_num_rows($query);
$pageval=1;
$page=($pageval-1)*$pagesize;
if(@$_GET['page']){
$pageval=$_GET['page'];
if ($pageval<=0){
$pageval=1;
}
$page=($pageval-1)*$pagesize;
}
echo "共 $rows 条";
$pagenum=ceil($rows/$pagesize);
for($i=1;$i<=$pagenum;$i++){
if ($pageval==$i){
echo "<font color=#ff0000>".$i."</font> ";
}else{
echo "<a href=$url?page=".$i.">$i</a> ";
}
}
if($rows>$pagesize){
if ($pageval==1){
echo "<a href=$url?page=".($pageval+1).">下一页</a>";
}else{
if ($pageval*$pagesize>=$rows){
echo "<a href=$url?page=".($pageval-1).">上一页</a>";
}else{
echo "<a href=$url?page=".($pageval-1).">上一页</a> "."<a href=$url?page=".($pageval+1).">下一页</a>";
}
}
}
echo "<br>";
$sqli="select * from tb_info limit $page,$pagesize";
$que=mysql_query($sqli);
while($row=mysql_fetch_array($que)){
echo $row['type']."<br>".$row['content']."<br>";
echo str_repeat("_",40)."<br>";
}
?>
Ⅳ 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_proct",$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_proct",$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分页的代码
$page = $_REQUEST["page"];
function Page($rows,$page_size,$others=""){
global $page,$select_from,$select_limit,$pagenav;
if($page_size <= 1 || $page_size == '') $page_size = 20;
$page_count = ceil($rows/$page_size);
if($page <= 1 || $page == '') $page = 1;
if($page >= $page_count) $page = $page_count;
if($page <= 1) $page = 1;
$select_limit = $page_size;
$select_from = ($page - 1) * $page_size;
if($select_from<0) $select_from=0;
$select_from = $select_from.',';
$pre_page = ($page == 1)? 1 : $page - 1;
$next_page= ($page == $page_count)? $page_count : $page + 1 ;
$others =trim($others)?trim($others)."&":"";
$pagenav.="<div class='fanye MIB_txtbl left'>".$page."/".$page_count."页<em>共".$rows."条记录</em>".$page_size." 条/页 ";
$pagenav .= "<a href='?".$others."page=1' class='btn_num btn_numWidth'><b>首页</b></a>";
$pagenav .= "<a href='?".$others."page=$pre_page' class='btn_num btn_numWidth'><b>上一页</b></a>";
$pagenav .= "<a href='?".$others."page=$next_page' class='btn_num btn_numWidth'><b>下一页</b></a>";
$pagenav .= "<a href='?".$others."page=$page_count' class='btn_num btn_numWidth'><b>末页</b></a></div>";
$pagenav .= "<input type='text' id='page_inp' value='".$page."'/>";
$pagenav .= "<input type='image' src='templates/images/jump.gif' id='jump' onclick='window.location=\"?".$others."page=\"+document.getElementById(\"page_inp\").value'/>";
if($page_count<=1){
$pagenav="";
}
}
使用:
Page($count,$page_number,$page_condition);//$count总记录数,$page_number每页显示,$page_condition其他参数
直接输出
$pagenav就可以了
里面的展示可以自己修改吧
范例:
Page($count,$page_number,$page_condition);
$query ="select * from group limit $select_from $select_limit";
$groupinfo=mysql_query($query);
foreach($groupinfo as $key=>$value){//循环输出数据
echo "";
}
echo $pagenav;//输出分页
Ⅶ php 翻页的问题,帮忙修改代码
<ahref="?proid=<?phpecho$_GET[proid]?>&pageno=1">首页</a>|
<ahref="?proid=<?phpecho$_GET[proid]?>&pageno=<?phpecho$pageno-1?>">上一页</a>|
<ahref="?proid=<?phpecho$_GET[proid]?>&pageno=<?phpecho$pageno+1?>"class="forumRowHighlight">下一页</a>|
<ahref="?proid=<?phpecho$_GET[proid]?>&pageno=<?phpecho$pagecount?>">末页</a>|
//跳转输入框
<inputtype="text"onchange="jump()"id="jump"/>
<?php
}
//这个大括号应该和前面的代码有关,没有去掉
?>
页次:<?phpecho$pageno?>/<?phpecho$pagecount?>页 共有<?phpecho$recordcount?>条信息
<script>
//JS跳转事件
functionjump(){
location.href="?proid=<?phpecho$_GET[proid]?>&pageno="+$("#jump").val();
}
</script>
Ⅷ PHP分页显示最简单代码
<?
include("common.php");
?>
<?
//获得总页及设定每页显示贴子
opendb();
$list_num=10;
$result=mysql_query("select count(*) from board");
$rs=mysql_fetch_array($result);
$num=$rs[0];
$pagenumber=ceil($num/$list_num);
if(empty($_GET[’page’])) {$page=0;}
else {
$page=$_GET[’page’];
if($page<0) $page=0;
if($page>=$pagenumber) $page=$pagenumber-1;
}
//获得总页及设定每页显示贴子
?>
<?
//显示贴子标题
$exec="select * from board limit ".($page*$list_num).",".$list_num;
$result=mysql_query($exec);
while($rs=mysql_fetch_object($result))
{
echo $rs->title."<br>";
}
//显示贴子标题
?>
<? //页码显示
for ($i=1;$i<=($pagenumber-1);$i++){
echo "<a href=’fenye.php?page=".$i."’>".$i."</a> ";
}
//页码显示
?>
Ⅸ 又一个php 分页类实现代码
复制代码
代码如下:
<?php
function
genpage(&$sql,$page_size=10)
{
global
$pages,$sums,$eachpage,$page;
//总页数,总记录,每页数,当前页
$page
=
$_GET["page"];
if($page
==0)$page
=1;
$eachpage
=
$page_size;
$pagesql
=
strstr($sql,"
from
");
$pagesql
=
"select
count(*)
as
ids
".$pagesql;
$conn
=
mysql_query($pagesql)
or
die(mysql_error());
if($rs
=
mysql_fetch_array($conn))$sums
=
$rs[0];
$pages=ceil($sums/$eachpage);
if($pages==0)$pages=1;
$startpos
=
($page-1)*$eachpage;
$sql
.="
limit
$startpos,$eachpage
";
}
//显示分页
function
showpage()
{
global
$pages,$sums,$eachpage,$page;
//总页数,总记录,每页数,当前页,其它参数
$link=$_SERVER['PHP_SELF'];
echo
"记录".$sums.":".$eachpage."";
echo
"页数".$page."/".$pages."";
$p_head=$page-5;
if($p_head<=0)$p_head=1;
//页码循环开始数
前5个
$p_end=$page+5;
if($p_end>$pages)$p_end=$pages;
//页码循环结束数
后5个
echo
"[<a
href=$link?page=1>首页</a>]
";
for($i=$p_head;$i<=$p_end;$i++)
{
if($i!=$page)
echo
"<a
href=$link?page=$i>[$i]</a>
";
else
echo
"<b><strike>[$i]</strike></b>
";
}
echo
"
[<a
href=$link?page=$pages>末页</a>]";
}
?>
Ⅹ 如何整理PHP分页代码,使其实现经典分页样式
如何整理PHP分页代码,使其实现经典分页样式
<?php
require_once("conn.php");
$ind_cont_sel_sql="select * from `board` order by `sn` desc";
$ind_cont_sel_query = mysql_query($ind_cont_sel_sql);
$page_info_num = 3;
$page_def = 1;
if (isset($_GET['pagenum'])){
$page_def = $_GET['pagenum'];
}
$sql_page_num = ($page_def - 1)*$page_info_num;
$sql_query_limit=$ind_cont_sel_sql." LIMIT ".$sql_page_num.",".$page_info_num;
$sql_query_limit_info=mysql_query($sql_query_limit);
$all_info_num = mysql_num_rows($ind_cont_sel_query);
$all_page_num = ceil($all_info_num/$page_info_num);
?>
<table width="100%" border="0">
<?php
$i=0;
while($ind_cont_sel_row=mysql_fetch_assoc($sql_query_limit_info)){ $i++; ?>
<tr>
<td colspan="2"><div class="post-utility"><p><h1><u><?php echo $sql_page_num+$i;?></u></h1></p></div></td>
</tr>
<tr>
<td width="80px"><p>title</p></td><td><?php echo nl2br($ind_cont_sel_row["title"]);?></td>
</tr>
<tr>
<td width="80px"><p>name</p></td><td><?php echo nl2br($ind_cont_sel_row["name"]);?></td>
</tr>
<tr>
<td width="80px"><p>time</p></td><td><?php echo nl2br($ind_cont_sel_row["time"]);?></td>
</tr>
<tr>
<td width="80px"><p>content</p></td><td><?php echo nl2br($ind_cont_sel_row["content"]);?></td>
</tr>
<tr><td colspan="2"><hr></td></tr>
<?php } ?>
<tr><td colspan="2" height="10px" align="center">
<a href="?pagenum=1">page</a>
<?
if ($_GET["pagenum"]!=1){ ?>
<a href="?pagenum=<? echo $_GET["pagenum"]-1; ?>">up</a>
<?
}else{
echo "";
} ?>
<?
for($page_num=($_GET["pagenum"]-2);$page_num<$_GET["pagenum"];$page_num++){
if ($page_num<=0){
echo "";
}else{?>
<a href="?pagenum=<?php echo $page_num;?>"><?php echo $page_num;?></a>
<?
}}
?>
<?php echo $_GET["pagenum"];?>
<!--<a href="?pagenum=<?php echo $_GET["pagenum"];?>"><?php echo $_GET["pagenum"];?></a>-->
<?
for($page_num=$_GET["pagenum"]+1;$page_num<=($_GET["pagenum"]+2);$page_num++){
if ($page_num>$all_page_num){
echo "";
}else{
?>
<a href="?pagenum=<?php echo $page_num;?>"><?php echo $page_num;?></a>
<?
}
}
?>
<?
if ($_GET["pagenum"]<$all_page_num){ ?>
<a href="?pagenum=<? echo $_GET["pagenum"]+1; ?>">next</a>
<?
}else{
echo "";
} ?>
<a href="?pagenum=<?php echo $all_page_num;?>">last</a>
</td>
</tr>
</table>