php,表格制作

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

竭诚为您提供优质文档/双击可除

php,表格制作

篇一:使用php和jquery制作分页和表格

使用php和jquery制作分页和表格

如果您已经下载了本站提供的baseproject项目源码,后台中列表页面均可作为示例,其中文章列表页面的功能最为丰富。如果您没有下载该源码,相关的js文件可以从获得,示例页面为页面。以下是后台文章列表页面的截图。

分页和表格功能实例截图分页功能详解

分页功能用于当目标数据过多时,为提高页面展示速度采用的一种手段。本文中的分页功能借用了zendFramework 中的zend_paginator对象,分页适配器为

zend_paginator_adapter_null。该适配器也是最简单易用的一个。工作原理

在php端,分页功能的基本参数为记录总数($countRows)、每页显示的记录数

($rowsperpage)、当前页码($page默认值为1),页码

数量($items指每次在页面上显示多少个页码,建议为单数)。其他参数可以通过计算得到:

1.页码合计($countpages)取不小于

$countRows/$rowsperpage的整数;

2.起始页码和结束页码的计算方式太长不写了;

3.页码列表:从起始页码到结束页码的页码组成的数组,如array(4,5,6,7,8)

在html端,必要的参数为php端计算得出的数据,同

时需要指定一个用于显示分页信息的html元素。然后使用jquery根据参数动态生成html并将其插入到指定的html元素中

就行了。

php示例代码详解1.

2.publicfunctionarticlesaction(){$pagenumber=$this-

>getRequest()->getparam(page,1);//获取当前页码,如果未指定则设为1

3.$sortby=$this->getRequest()->getparam(sortby);//

获取sortby设置

4.if(empty($sortby)||!preg_match(/^[a-z0-9_-]+(asc|

desc)$/i,$sortby)){

5.//如果sortby为空或者不符合格式要求则使用以下的排序方式

6.//注意:一定要进行格式检查,防止sql注入

7.$sortby=project_table::getFullycolumnname(article ,id).desc;

8.}

9.$marticle=newmodel_article();

10./*这部分是处理where子句的,和本文关系不大,略过*/

11.$wherearray=array(

12.`article`.`article_category_id`

=>$this->getRequest()->getparam(project_table::getF ullycolumnname(article,

article_category_id)),

13.`article`.`article_status_id`

=>$this->getRequest()->getparam(project_table::getF ullycolumnname(article,

article_status_id)),

14.);

15.$wherestring=;

16.foreach($wherearrayas$key=>$value){

17.if(!empty($value)){

18.if($key==`article`.`article_category_id`-1){

19.$wherestring.="and{$key}isnull";

20.}else{

21.$wherestring.="and{$key}={$value}";

22.}

23.}

24.}

25.if(!empty($wherestring)){

26.$wherestring=substr($wherestring,strlen(and));

27.}else{

28.$wherestring=null;

29.}

30./*以上是处理where子句的*/

31.$maxgetRows=project_config::paginatoR_item_count _peR_page;//设置每页显示的记录数量

32.$articles=$marticle->getarticles($wherestring,$s ortby,$maxgetRows,($pagenumber-1)*$maxgetRows);//从数据库中读取数据

33.$countarticles=project_table::getlastFoundRows() ;//获得符合条件的数据总数

35.//如果没有取到任何记录,而且记录总数不为空,说明当前页码超出范围了,所以处理一下

36.$articles=$marticle->getarticles($wherestring,$s ortby,$maxgetRows,null);

37.$pagenumber=1;

38.}

39.$pdate=project_datetime::getinstance();//时间处理工具,和本文无关

40.foreach($articlesas$key=>$article){

41.$articles[$key][project_table::getFullycolumnnam e(article,modified)]=$pdate->getusertimeFromtime($a rticle[project_table::getFullycolumnname(article,mo dified)],true);//把时间戳转换为用户的当地时间,和本文无关

相关文档
最新文档