PHP编程:PHP教程:相似GOOGLE搜刮了局的分页
另外要叮嘱各位的是,抵御诱惑,ASP/PHP/JSP/.NET的对比也许会让你无所适从,你也许学了一半PHP,又开始打C#的主意,或者有人说JAVA很强,这个时候的你绝对不能动摇,哪怕你真想学。 </p> function reterPageStr($pageSize,$curPage,$countSql,$pagePara){
// 前往字符串 rsStartpageStr
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;
}
function outPageList($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.='
<script language="javascript">
function fucCheckNUM(obj){
var patn = /^\d+(\.\d+)?$/;
if(!patn.test(obj.value))
{
obj.value="1";
return false;
}
return true;
}
function locationPage(url)
{
var pageNum=document.getElementById("curPage").value;
var urlto=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;}
.PageClass ul{ float:left;}
.PageClass ul li{ margin-right:3px; float:left;}
.PageClass ul li a{border:1px solid #d8dfef; color:#01669A; text-decoration:none;padding:1px 4px;width:20px; height:15px;}
.PageClass ul li a:hover{ color:#fe6601;text-decoration:none; border:1px solid #d8dfef;padding:1px 4px; height:18px;}
style>
<div class=\"PageClass\">
<ul>
<li><strong>".$curPage."/".$pageCount."strong>li>
ul>";
if($curPage!=1){
$pageStr.="
<ul>
<li>
<a href=?curPage=1".$pagePara.">首页a> <a href=?curPage=$prePage&".$pagePara.">上一页a>
li>
ul>";
}
$pageStr.="<ul>";
for($i=$pageFromNum;$i<=$pageToNum;$i++){
$pageStr.="<li>";
if($curPage==$i){
$pageStr.=$i;
}else{
$pageStr.="<a href=?curPage=$i&".$pagePara.">$ia>";
}
$pageStr.="li>";
}
$pageStr.="ul>";
if($curPage!=$pageCount){
$pageStr.="<ul><li>";
$pageStr.="<a href=?curPage=$nextPage".$pagePara.">下一页a> <a href=?curPage=$pageCount&".$pagePara.">末页a>";
$pageStr.="li>ul>";
}
$url="?url=a&".$pagePara;
$pageStr.='<ul>
<input type="text" id="curPage" name="curPage" value="'.$curPage.'" onBlur="fucCheckNUM(this)" style="width:30px;border:1px solid #000;"/>
';
$pageStr.="
<input type=\"button\" value=\"Go\" onclick=\"locationPage('".$url."')\" style=\"line-height:20px;border:1px solid #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="select count(Com_ID) from CommentList ";
$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;
$pageStr=$pageOutStrArr;
$sql="select Com_ID,Com_Type from CommentList order by Com_ID desc limit $rsStart,$pageSize ";
在这里,$UrlPara 是 在地址的问号前面的参数
好比地址是 http://www.javapeixun.com.cn/blog/?curPage=2&type=a 则 $UrlPara="&type=a";
OK。再有甚么不分明的。给我留言便可。
讲了这么多,无非是想说:学习PHP不仅要掌握方法,更多的是付出汗水,我不希望看到中途放弃的人,相信自己,相信自己的选择,更要相信自己的能力,如果自己想放弃,暴力一点的话,就自己抽自己一个嘴巴。 php是动态网站开发的优秀语言,在学习的时候万万不能冒进。在系统的学习前,我认为不应该只是追求实现某种效果,因为即使你复制他人的代码调试成功,实现了你所期望的效果,你也不了解其中的原理。 首先我是坚决反对新手上来就用框架的,因为对底层的东西一点都不了解,造成知识上的真空,会对以后的发展不利。我的观点上手了解下框架就好,代码还是手写。当然啦如果是位别的编程语言的高手的话,这个就另当别论啦。 实践是检验自己会不会的真理。 兴趣是最好的老师,百度是最好的词典。 在我安装pear包的时候老是提示,缺少某某文件,才发现 那群extension 的排列是应该有一点的顺序,而我安装的版本的排序不是正常的排序。没办法我只好把那群冒号加了上去,只留下我需要使用的扩展。 再就是混迹于论坛啦,咱们的phpchina的论坛就很强大,提出的问题一般都是有达人去解答的,以前的帖子也要多看看也能学到不少前辈们的经验。别的不错的论坛例如php100,javaeye也是很不错的。 php是动态网站开发的优秀语言,在学习的时候万万不能冒进。在系统的学习前,我认为不应该只是追求实现某种效果,因为即使你复制他人的代码调试成功,实现了你所期望的效果,你也不了解其中的原理。 做为1门年轻的语言,php一直很努力。 建议加几个专业的phper的群,当然啦需要说话的人多,一处一点问题能有人回答你的,当然啦要让人回答你的问题,平时就得躲在里面聊天,大家混熟啦,愿意回答你问题的人自然就多啦。 首推的搜索引擎当然是Google大神,其次我比较喜欢 百度知道。不过搜出来的结果往往都是 大家copy来copy去的,运气的的概率很大。 学习php的目的往往是为了开发动态网站,phper就业的要求也涵盖了很多。我大致总结为:精通php和mysql 环境搭建好,当你看见你的浏览器输出“it works\\\\\\\"时你一定是喜悦的。在你解决问题的时候,我强烈建议多读php手册。 其实也不算什么什么心得,在各位大侠算是小巫见大巫了吧,望大家不要见笑,若其中有错误的地方请各位大虾斧正。 建议加几个专业的phper的群,当然啦需要说话的人多,一处一点问题能有人回答你的,当然啦要让人回答你的问题,平时就得躲在里面聊天,大家混熟啦,愿意回答你问题的人自然就多啦。 在我安装pear包的时候老是提示,缺少某某文件,才发现 那群extension 的排列是应该有一点的顺序,而我安装的版本的排序不是正常的排序。没办法我只好把那群冒号加了上去,只留下我需要使用的扩展。 当留言板完成的时候,下步可以把做1个单人的blog程序,做为目标, 我还是推荐用firefox ,配上firebug 插件调试js能省下不受时间。谷歌的浏览器最好也不少用,因为谷歌的大侠们实在是太天才啦,把一些原来的js代码加了一些特效。 在学习的过程中不能怕麻烦,不能有懒惰的思想。学习php首先应该搭建一个lamp环境或者是wamp环境。这是学习php开发的根本。虽然网络上有很多集成的环境,安装很方便,使用起来也很稳定、
页:
[1]