PHP教程:类似GOOGLE搜索结果的分页_PHP技巧_黑客防线网安服务器维护基地--Powered by WWW.RONGSEN.COM.CN

PHP教程:类似GOOGLE搜索结果的分页

作者:黑客防线网安PHP教程基地 来源:黑客防线网安PHP教程基地 浏览次数:0

本篇关键词:类似教程curPagepageStr.
黑客防线网安网讯:  WebjxCom提示:PHP教程:类似GOOGLE搜索结果的分页。    functionreterPageStr($pageSize,$curPage,$countSql,$pagePara)    {    //返回字符串rsStart||pageStr    if(...
  WebjxCom提示:PHP教程:类似GOOGLE搜索结果的分页
  
  functionreterPageStr($pageSize,$curPage,$countSql,$pagePara)
  
  {
  
  //返回字符串rsStart||pageStr
  
  if($rsResult=mysql_query($countSql))$rsCount=mysql_result($rsResult,0,0);
  
  $pageCount=ceil($rsCount/$pageSize);
  
  if(!isset($curPage))$curPage=1;
  
  if($curPage<1)$curPage=1;
  
  if($curPage>$pageCount)$curPage=$pageCount;
  
  $rsStart=($curPage-1)*$pageSize;
  
  $pageStr=outPageList($pageCount,$curPage,$pagePara);
  
  $outStr=$rsStart."||".$pageCount."||".$pageStr."||".$rsCount;
  
  return$outStr;
  
  }
  
  functionoutPageList($pageCount,$curPage,$pagePara)
  
  {
  
  if($pageCount>1)
  
  {
  
  $pageListNum=10;
  
  $step=5;
  
  $pageStr="";
  
  $prePage=$curPage-1;
  
  $nextPage=$curPage+1;
  
  $pageFromNum=$curPage-$step;
  
  $pageToNum=$curPage+$step;
  
  if($pageCount<$step)
  
  {
  
  $pageFromNum=1;
  
  $pageToNum=$pageCount;
  
  }elseif($pageCount<$pageListNum)
  
  {
  
  $pageFromNum=1;
  
  $pageToNum=$pageCount;
  
  }
  
  elseif($pageToNum>$pageCount)
  
  {
  
  $pageToNum=$pageCount;
  
  if(($pageToNum-$pageFromNum)<$pageListNum)
  
  {
  
  $pageFromNum=$pageToNum-$pageListNum+1;
  
  }
  
  }else
  
  {
  
  if($pageFromNum<1)
  
  {
  
  $pageFromNum=1;
  
  $pageToNum=$curPage+$step-1;
  
  }
  
  }
  
  $pageStr.='
  
  <scriptlanguage="javascript">
  
  functionfucCheckNUM(obj){
  
  varpatn=/^d+(.d+)?$/;
  
  if(!patn.test(obj.value))
  
  {
  
  obj.value="1";
  
  returnfalse;
  
  }
  
  returntrue;
  
  }
  
  functionlocationPage(url)
  
  {
  
  varpageNum=document.getElementById("curPage").value;
  
  varurlto=url+"&curPage="+pageNum;
  
  window.location=urlto;
  
  }
  
  script>
  
  ';
  
  /*开始输出*/
  
  $pageStr.="
  
  <style>
  
  /*分页样式*/
  
  .PageClass{font-family:Verdana,Arial,Helvetica,sans-serif;font-size:11px;padding-top:0px;text-align:left;margin-top:2px;line-height:22px;height:22px;}
  
  .PageClassul{float:left;}
  
  .PageClassulli{margin-right:3px;float:left;}
  
  .PageClassullia{border:1pxsolid#d8dfef;color:#01669A;text-decoration:none;padding:1px4px;width:20px;height:15px;}
  
  .PageClassullia:hover{color:#fe6601;text-decoration:none;border:1pxsolid#d8dfef;padding:1px4px;height:18px;}
  
  style>
  
  <divclass="PageClass">
  
  <ul>
  
  <li><strong>".$curPage."/".$pageCount."strong>li>
  
  ul>";
  
  if($curPage!=1){
  
  $pageStr.="
  
  <ul>
  
  <li>
  
  <ahref=?curPage=1".$pagePara.">首页a><ahref=?curPage=$prePage&".$pagePara.">上一页a>
  
  li>
  
  ul>";
  
  }
  
  $pageStr.="<ul>";
  
  for($i=$pageFromNum;$i<=$pageToNum;$i++){
  
  $pageStr.="<li>";
  
  if($curPage==$i){
  
  $pageStr.=$i;
  
  }else{
  
  $pageStr.="<ahref=?curPage=$i&".$pagePara.">$ia>";
  
  }
  
  $pageStr.="li>";
  
  }
  
  $pageStr.="ul>";
  
  if($curPage!=$pageCount){
  
  $pageStr.="<ul><li>";
  
  $pageStr.="<ahref=?curPage=$nextPage".$pagePara.">下一页a><ahref=?curPage=$pageCount&".$pagePara.">末页a>";
  
  $pageStr.="li>ul>";
  
  }
  
  $url="?url=a&".$pagePara;
  
  $pageStr.='<ul>
  
  <inputtype="text"id="curPage"name="curPage"value="'.$curPage.'"onBlur="fucCheckNUM(this)"style="width:30px;border:1pxsolid#000;"/>
  
  ';
  
  $pageStr.="
  
  <inputtype="button"value="Go"onclick="locationPage('".$url."')"style="line-height:20px;border:1pxsolid#000;width:25px;height:20px;"/>";
  
  $pageStr.='ul>';
  
  $pageStr.="div>";
  
  return$pageStr;
  
  }
  
  }
  
  如上所示
  
  调用的时候只是需要调用
  
  reterPageStr($pageSize,$curPage,$countSql,$pagePara)
  
  这个函数即可。
  
  返回的的是个字符串以"||"分割开的。
  
  $outStr=$rsStart."||".$pageCount."||".$pageStr."||".$rsCount;
  
  $rsStart是用来读取数据库的时候limit后面的参数
  
  $pageCount是表示共有多少页码
  
  $pageStr即是输出的页码。
  
  $rsCount是记录总数。
  
  调用的示例如下
  
  $countSql="selectcount(Com_ID)fromCommentList";
  
  $pageSize="20";
  
  $curPage=$_GET['curPage'];
  
  $UrlPara="&Com_TypeID=$Com_TypeID&Com_Type=$Com_Type";
  
  $pageOutStr=reterPageStr($pageSize,$curPage,$countSql,$UrlPara);
  
  $pageOutStrArr=explode("||",$pageOutStr);
  
  $rsStart=$pageOutStrArr[0];
  
  $pageStr=$pageOutStrArr[2];
  
  $sql="selectCom_ID,Com_TypefromCommentListorderbyCom_IDdesclimit$rsStart,$pageSize";
  
  在这里$UrlPara是在地址的问号后面的参数
  
  
    黑客防线网安服务器维护方案本篇连接:http://www.rongsen.com.cn/show-17606-1.html
网站维护教程更新时间:2012-09-21 05:22:04  【打印此页】  【关闭
我要申请本站N点 | 黑客防线官网 |  
专业服务器维护及网站维护手工安全搭建环境,网站安全加固服务。黑客防线网安服务器维护基地招商进行中!QQ:29769479

footer  footer  footer  footer