PHP网页编程之若何简化php模板页面平分页代码的解析
培训的第四阶段,就是应用PHP语言开发实际的程序。以结合实际的项目开发来进行学习,效果真的很好,在学习完之后就开始练习,能比较容易掌握所学的知识,这是学校的学习所没法比的。分页|模板|页面 ------------------------------------------------
这篇文章次要是针对“利用模板的情形”写的,
然而这类办法合适于任何的场所,在任何情形下都是一种对照好的处理计划
------------------------
------------------------
在利用模板的时分,会碰到这么一个成绩:显示分页信息时操作费事,n多个模板都有分页块。
例如:
---共 20 笔记录,以后 3/5 页 首页 上一页 下一页 尾页 GO-----
初碰到这个成绩的道友,在思索处理这个成绩的时分仿佛都是在打php的主张,思索怎样用php来完成,然而不论你是怎样设计都后设计成两种计划
1、用嵌套轮回来完成
2、用n多个判别来弄
然而终究仍是对照费事的,并且解析的时分是用的办事器真个资本。
无妨换个办法用javascript来取代你的php!!!!,如许便可削减php剧本的代码量,还可以把解析分页的任务交给客户端本人来作。不外javascript调试起来能够会对照费事。
最主要的是可以简化分页显示时,解析模板碰到的疾苦。
上面用一个撑持pear的itx模板东西解析的模板.
个中<!-- BEGIN page -->和<!-- END page -->暗示一个块,{recordcount}这类相似的字符串是变量。
----------------list.tpl---------------------
//其它的html代码
<TABLE border="0" cellpadding="0" cellspacing="0" width="100%">
<TR>
<TD align="right" nowrap>
<script src="images/page.js" language="javascript"></script>
<script language="javascript">
<!-- BEGIN page -->
recordCount = {recordcount};
show = {showinonepage}
pageCount = {pagecount};
pageNow = {page};
pageStr = "?page=_page_";
document.write(showListPage0(recordCount, show, pageCount, pageNow, pageStr));
<!-- END page -->
</script>
</TD>
</TR>
</TABLE>
//其它的html代码
--------------------page.js------------
//---------------共 20 笔记录,以后 3/5 页 首页 上一页 下一页 尾页 GO-------------------
//recordCount = 20;
//show = 20
//pageCount = 5;
//pageNow = 3;
//pageStr = "?page=_page_";
//document.write(showListPage(recordCount, show, pageCount, pageNow, pageStr));
function showListPage0(recordCount, show, pageCount, pageNow, pageStr){
if(pageCount<1) pageCount =0;
if(pageNow<1)pageNow = 0;
str = '<form name="frmpage">共 <B>'+recordCount+'</B> 笔记录,以后 <B>'+pageNow+'/'+pageCount+'</B> 页';
if(pageNow<=1)
str += " 首页 ";
else
str += " <A href='"+pageStr.replace("_page_",1)+"'>首页</A> ";
if(pageNow<=1)
str += " 上一页 ";
else
str += " <A href='"+pageStr.replace("_page_",(pageNow-1))+"'>上一页</A> ";
if(pageNow>=pageCount)
str += " 下一页 ";
else
str += " <A href='"+pageStr.replace("_page_",(pageNow+1))+"'>下一页</A> ";
if(pageNow>=pageCount)
str += " 尾页 ";
else
str += " <A href='"+pageStr.replace("_page_",pageCount)+"'>尾页</A> ";
str += "跳到<input type=\"text\" name=\"txtpage\" size=\"3\">页";
str += "<input type=\"button\" value=\"GO\" onclick=\"pagego0(document.frmpage.txtpage.value,"+pageNow+","+pageCount+",'"+pageStr+"')\"></form>";
return str;
}
function pagego0(pageGo,pageNow,pageCount,pageStr){
if(pageGo>=1 && pageGo<=pageCount && pageNow!=pageGo)
window.location = pageStr.replace("_page_", pageGo);
}
----------------------------
别的这类办法即便不必模板,也能够用,也一样是一种好的分页处理计划,只需将{recordcount}这类相似的字符串用变量的值交换就能够了。
----------------------------
既然选择了PHP,就要坚持学下去!大家有没有问自己为什么会选择学习PHP呢?就我个人而言,完全是因为兴趣,因为我的专业和计算机完全无关,但是就是对编程很赶兴趣,尤其对网络编程、web开发特别赶兴趣。 找到的的资料很多都是在论坛里的,需要注册,所以我一般没到一个论坛都注册一个id,所有的id都注册成一样的,这样下次再进来的时候就不用重复注册啦。当然有些论坛的某些资料是需要的付费的。 基础有没有对学习php没有太大区别,关键是兴趣。 最后介绍一个代码出错,但是老找不到错误方法,就是 go to wc (囧),出去换换气没准回来就找到错误啦。 装在C盘下面可以利用windows的ghost功能可以还原回来(顺便当做是重转啦),当然啦我的编译目录要放在别的盘下,不然自己的劳动成果就悲剧啦。 当留言板完成的时候,下步可以把做1个单人的blog程序,做为目标, 最后介绍一个代码出错,但是老找不到错误方法,就是 go to wc (囧),出去换换气没准回来就找到错误啦。 找到的的资料很多都是在论坛里的,需要注册,所以我一般没到一个论坛都注册一个id,所有的id都注册成一样的,这样下次再进来的时候就不用重复注册啦。当然有些论坛的某些资料是需要的付费的。 找到的的资料很多都是在论坛里的,需要注册,所以我一般没到一个论坛都注册一个id,所有的id都注册成一样的,这样下次再进来的时候就不用重复注册啦。当然有些论坛的某些资料是需要的付费的。 对于懒惰的朋友,我推荐php的集成环境xampp或者是wamp。这两个软件安装方便,使用简单。但是我还是强烈建议自己动手搭建开发环境。 ,熟悉html,能用div+css,还有javascript,优先考虑linux。我在开始学习的时候,就想把这些知识一起学习,我天真的认为同时学习能够互相呼应,因为知识是相通的。 对于初学者来说不推荐去拿钱买的。当然如果一个网站你经常去用,而且里面的资料也比较有用,最好还是买个会员比较好,毕竟那些也是别人的工作成果。 当留言板完成的时候,下步可以把做1个单人的blog程序,做为目标, 不禁又想起那些说php是草根语言的人,为什么认得差距这么大呢。 曾经犯过一个很低级的错误,我在文件命名的时候用了一个横线\\\\\\\'-\\\\\\\' 号,结果找了好几个小时的错误,事实是命名的时候 是不能用横线 \\\\\\\'-\\\\\\\' 的,应该用的是下划线\\\\\\\'_\\\\\\\' ; 如果你已经到这种程度了,那么你已经可以做我的老师了。其实php也分很多的区域, 在我安装pear包的时候老是提示,缺少某某文件,才发现 那群extension 的排列是应该有一点的顺序,而我安装的版本的排序不是正常的排序。没办法我只好把那群冒号加了上去,只留下我需要使用的扩展。 Ps:以上纯属原创,如有雷同,纯属巧合 当然这种网站的会员费就几十块钱。
页:
[1]