分页代码,请参考
<table width="90%" border="0" cellpadding="1" cellspacing="1" bgcolor="#84B4DB" align="center">
<tr align="center">
<td width="5%" height="20" nowrap><span class="style1">次序</span></td>
<td width="18%"><span class="style1">产品图片</span></td>
<td width="24%"><span class="style1">产品名称</span></td>
<td width="42%"><span class="style1">产品简介</span></td>
<td width="11%"><span class="style1">操作</span></td>
</tr>
<?
//查询结果
if ($_GET['action']=="search" or $_POST['action']=="search")
{
$keyword=$_POST['keyword'];
$pclass=$_POST['pclass'];
$where="where 1=1 ";
if ($pclass!=0) $where.=" and pClass1='$pclass'";
if ($keyword!="") $where.=" and pName like '%$keyword%'";
if ($yu!="nothing") $where.=" and pLanguage='$yu'";
$query = "select * from tbl_product ".$where." order by is_order";
}else{
$pclass=$_GET['pclass'];
if ($pclass!="")
{
$query="select * from tbl_product where pClass1='$pclass' order by is_order";
}else{
$query="select * from tbl_product order by is_order";
}
}
$result=mysql_query($query) or die(mysql_error());
//--取回数据
$count=0;
while($row=mysql_fetch_array($result)){
$rs[$count]['id']=$row['id'];
$rs[$count]['pName']=$row['pName'];
$rs[$count]['pImgSmall']=$row['pImgSmall'];
$rs[$count]['pSpec']=$row['pSpec'];
$rs[$count]['pClass1']=$row['pClass1'];
$rs[$count]['is_New']=$row['is_New'];
$rs[$count]['is_order']=$row['is_order'];
$rs[$count]['pPrice']=$row['pPrice'];
$rs[$count]['pLanguage']=$row['pLanguage'];
$count++;
}
//--获取$page值
$page=$_GET['page'];
if (@$page=="")
{
$page=$_POST['page'];
if ($page=="")
$page = 0;
}
//--计算页数
$count = count($rs);
$msgPerPage=10; //每页显示数
$start = @$page*$msgPerPage;
$end = $start+$msgPerPage;
if ($end>$count)
$end = $count;
$totalpage = ceil($count/$msgPerPage);
//输出记录
for ($i=$start;$i<$end;$i++)
{
//得到产品类别
$class1=$rs[$i]['pClass1'];
$res=mysql_query("select * from tbl_p_class where id='$class1'");
$res1=mysql_fetch_array($res);
$cn_classname=$res1['cn_name'];
$en_classname=$res1['en_name'];
?>
<tr bgcolor="#FFFFFF">
<td height="53" align="center"><?=$rs[$i]['is_order']?></td>
<td align="center">
<?
if ($rs[$i]['pImgSmall']!="")
{
echo "<img src=upfile/".$rs[$i]['pImgSmall'].">";
}else{
echo "暂无图片";
}
?>
</td>
<td bgcolor="#FFFFFF">
<?
echo " ".$rs[$i]['pName'];
if ($rs[$i]['is_New']=="1")
{
echo "<font color=red>(新)</font>";
}
echo "<p> 属于类别:".$cn_classname." ".$en_classname;
if ($rs[$i]['pLanguage']=="1") $language="中文";
if ($rs[$i]['pLanguage']=="2") $language="English";
if ($rs[$i]['pLanguage']=="0") $language="中文/English";
echo "<br> 发布版本:".$language;
?>
<br>
</td>
<td>
<?
echo nl2br($rs[$i]['pSpec']);
echo "<br><br><font color=red>会员价格:";
if ($rs[$i]['pPrice']!="")
{
echo $rs[$i]['pPrice'];
}else{
echo "暂无会员价格信息……";
}
echo "</font>";
?>
</td>
<td align="center" nowrap><a href="modify_product.php?pid=<?=$rs[$i]['id']?>">修改</a> |
<a href="javascript:del_member('<?=$rs[$i]['id']?>');">删除</a></td>
</tr>
<?
}
if ($count==0)
{
echo "<tr><td bgcolor=#FFFFFF colspan=5 align=center height=60>暂无记录……</td></tr>";
}
?>
</table>
<table width="80%" border="0" cellpadding="1" align="center">
<tr>
<td align="right">
<?
echo " 共有".$count."条";
echo " 页码:<font color=red>".($page+1)."</font>/".$totalpage." ";
//开始制作导航条----------------------------------------------
if ($page == "0")
{
echo "<font color=#666666>首页 | 上一页</font>";
}else {
echo "<a href=javascript:viewPage(1);>首页</a> | <a href=javascript:viewPage(".$page.")> 上一页 </a>";
}
if ($page == $totalpage-1)
{
echo "<font color=#666666>| 下一页 | 尾页 ";
}else{
echo "| <a href=javascript:viewPage(".($page+2).")>下一页</a> | <a href=javascript:viewPage(".$totalpage.")>尾页</a>";
}
?>
转到第
<input type='text' name='goto_page1' style='border: 1px solid rgb(0,0,0)' size=4 maxlength=4>
页
<input style='height:20;WIDTH: 42px;' class='button' hidefocus type='button' value='跳转' name='cmd_goto' onClick='javascript:viewPage(document.all.goto_page1.value);'>
</td>
</tr>
</table>
<!---------开始嵌入代码(为跳转导航)--------->
<script language=javascript>
function viewPage(ipage){
if (ipage<=0) ipage=1;
document.frm_page.page.value=ipage-1;
document.frm_page.submit();
}
</script>
<form action="<?echo $PHP_SELF;?>" method=post name="frm_page">
<input type="hidden" name="page" >
<input type="hidden" name="keyword" value="<?=$keyword?>">
<input type="hidden" name="pclass" value="<?=$pclass?>">
<input type="hidden" name="yu" value="<?=$yu?>">
<input type="hidden" name="action" value="search">
</form>
<table width="90%" border="0" cellpadding="1" cellspacing="1" bgcolor="#84B4DB" align="center">
<tr align="center">
<td width="5%" height="20" nowrap><span class="style1">次序</span></td>
<td width="18%"><span class="style1">产品图片</span></td>
<td width="24%"><span class="style1">产品名称</span></td>
<td width="42%"><span class="style1">产品简介</span></td>
<td width="11%"><span class="style1">操作</span></td>
</tr>
<?
//查询结果
if ($_GET['action']=="search" or $_POST['action']=="search")
{
$keyword=$_POST['keyword'];
$pclass=$_POST['pclass'];
$where="where 1=1 ";
if ($pclass!=0) $where.=" and pClass1='$pclass'";
if ($keyword!="") $where.=" and pName like '%$keyword%'";
if ($yu!="nothing") $where.=" and pLanguage='$yu'";
$query = "select * from tbl_product ".$where." order by is_order";
}else{
$pclass=$_GET['pclass'];
if ($pclass!="")
{
$query="select * from tbl_product where pClass1='$pclass' order by is_order";
}else{
$query="select * from tbl_product order by is_order";
}
}
$result=mysql_query($query) or die(mysql_error());
//--取回数据
$count=0;
while($row=mysql_fetch_array($result)){
$rs[$count]['id']=$row['id'];
$rs[$count]['pName']=$row['pName'];
$rs[$count]['pImgSmall']=$row['pImgSmall'];
$rs[$count]['pSpec']=$row['pSpec'];
$rs[$count]['pClass1']=$row['pClass1'];
$rs[$count]['is_New']=$row['is_New'];
$rs[$count]['is_order']=$row['is_order'];
$rs[$count]['pPrice']=$row['pPrice'];
$rs[$count]['pLanguage']=$row['pLanguage'];
$count++;
}
//--获取$page值
$page=$_GET['page'];
if (@$page=="")
{
$page=$_POST['page'];
if ($page=="")
$page = 0;
}
//--计算页数
$count = count($rs);
$msgPerPage=10; //每页显示数
$start = @$page*$msgPerPage;
$end = $start+$msgPerPage;
if ($end>$count)
$end = $count;
$totalpage = ceil($count/$msgPerPage);
//输出记录
for ($i=$start;$i<$end;$i++)
{
//得到产品类别
$class1=$rs[$i]['pClass1'];
$res=mysql_query("select * from tbl_p_class where id='$class1'");
$res1=mysql_fetch_array($res);
$cn_classname=$res1['cn_name'];
$en_classname=$res1['en_name'];
?>
<tr bgcolor="#FFFFFF">
<td height="53" align="center"><?=$rs[$i]['is_order']?></td>
<td align="center">
<?
if ($rs[$i]['pImgSmall']!="")
{
echo "<img src=upfile/".$rs[$i]['pImgSmall'].">";
}else{
echo "暂无图片";
}
?>
</td>
<td bgcolor="#FFFFFF">
<?
echo " ".$rs[$i]['pName'];
if ($rs[$i]['is_New']=="1")
{
echo "<font color=red>(新)</font>";
}
echo "<p> 属于类别:".$cn_classname." ".$en_classname;
if ($rs[$i]['pLanguage']=="1") $language="中文";
if ($rs[$i]['pLanguage']=="2") $language="English";
if ($rs[$i]['pLanguage']=="0") $language="中文/English";
echo "<br> 发布版本:".$language;
?>
<br>
</td>
<td>
<?
echo nl2br($rs[$i]['pSpec']);
echo "<br><br><font color=red>会员价格:";
if ($rs[$i]['pPrice']!="")
{
echo $rs[$i]['pPrice'];
}else{
echo "暂无会员价格信息……";
}
echo "</font>";
?>
</td>
<td align="center" nowrap><a href="modify_product.php?pid=<?=$rs[$i]['id']?>">修改</a> |
<a href="javascript:del_member('<?=$rs[$i]['id']?>');">删除</a></td>
</tr>
<?
}
if ($count==0)
{
echo "<tr><td bgcolor=#FFFFFF colspan=5 align=center height=60>暂无记录……</td></tr>";
}
?>
</table>
<table width="80%" border="0" cellpadding="1" align="center">
<tr>
<td align="right">
<?
echo " 共有".$count."条";
echo " 页码:<font color=red>".($page+1)."</font>/".$totalpage." ";
//开始制作导航条----------------------------------------------
if ($page == "0")
{
echo "<font color=#666666>首页 | 上一页</font>";
}else {
echo "<a href=javascript:viewPage(1);>首页</a> | <a href=javascript:viewPage(".$page.")> 上一页 </a>";
}
if ($page == $totalpage-1)
{
echo "<font color=#666666>| 下一页 | 尾页 ";
}else{
echo "| <a href=javascript:viewPage(".($page+2).")>下一页</a> | <a href=javascript:viewPage(".$totalpage.")>尾页</a>";
}
?>
转到第
<input type='text' name='goto_page1' style='border: 1px solid rgb(0,0,0)' size=4 maxlength=4>
页
<input style='height:20;WIDTH: 42px;' class='button' hidefocus type='button' value='跳转' name='cmd_goto' onClick='javascript:viewPage(document.all.goto_page1.value);'>
</td>
</tr>
</table>
<!---------开始嵌入代码(为跳转导航)--------->
<script language=javascript>
function viewPage(ipage){
if (ipage<=0) ipage=1;
document.frm_page.page.value=ipage-1;
document.frm_page.submit();
}
</script>
<form action="<?echo $PHP_SELF;?>" method=post name="frm_page">
<input type="hidden" name="page" >
<input type="hidden" name="keyword" value="<?=$keyword?>">
<input type="hidden" name="pclass" value="<?=$pclass?>">
<input type="hidden" name="yu" value="<?=$yu?>">
<input type="hidden" name="action" value="search">
</form>
function selectPage($QueryStr,$page,$pageSize)
{
$R=@mssql_query($QueryStr);
if ($R){
$totalPage = ceil(mssql_num_rows($R)/$pageSize);
if (!$page||$page<=0) $page = 1;
if ($page>$totalPage) $page = $totalPage;
$begin = ( $page-1 ) * $pageSize;
$ReArr = array();
$QCount=0;
if($pageSize>0) @mssql_data_seek($R,$begin);
while($ResultArr=@mssql_fetch_array($R)){
if($pageSize>0)
if($QCount>$pageSize-1) break;
$ReArr[$QCount]=$ResultArr;
$QCount++;
}
return $ReArr;
}else{
return false;
}
}
返回数组,自己遍历一下就知道结构了
这种方法的优点是只用一次查询,缺点是纪录数据量太大的话可能会超出php脚本内存限制还有一种经典的方法就是在sqlserver服务器上写一个存储过程,每次只取出当前页的纪录。基本思路是:
带入参数page、pagesize,将符合条件的记录存入一个临时表,并且在这个临时表中加上一个自动增长的id。这样你可以利用符合条件的纪录总数,page,pageSize等获取当前页的id范围
http://php.weblogs.com/
见http://search.csdn.net/Expert/topic/2589/2589154.xml?temp=.4191248如果太慢的话那不清楚了,关注!