美洲杯波胆_美洲杯波胆赔率
做最好的网站
来自 计算机教程 2019-07-12 09:07 的文章
当前位置: 美洲杯波胆 > 计算机教程 > 正文

thinkphp之ajax分页类

<?php    class IndexAction extends Action {     public function index() {    import("@.ORG.Page");       //导入分页类    $Form   =   M('Form');    $list = $Form->select();    // $list = range(2,51);    $param = array(     'result'=>$list,   //分页用的数组或sql     'listvar'=>'list',   //分页循环变量     'listRows'=>10,   //每页记录数     'parameter'=>'search=key&name=thinkphp',//url分页后继续带的参数     'target'=>'content', //ajax更新内容的容器id,不带#     'pagesId'=>'page',  //分页后页的容器id不带# target和pagesId同时定义才Ajax分页     'template'=>'Index:ajaxlist',//ajax更新模板    );    $this->page($param);    $this->display();   }     /**      ----------------------------------------------------------    * 分页函数 支持sql和数据集分页 sql请用 buildSelectSql()函数生成      ----------------------------------------------------------    * @access public      ----------------------------------------------------------    * @param array   $result 排好序的数据集或者查询的sql语句    * @param int       $totalRows  每页显示记录数 默认21    * @param string $listvar    赋给模板遍历的变量名 默认list    * @param string $parameter  分页跳转的参数    * @param string $target  分页后点链接显示的内容id名    * @param string $pagesId  分页后点链接元素外层id名    * @param string $template ajaxlist的模板名    * @param string $url ajax分页自定义的url      ----------------------------------------------------------    */   public function page($param) {    extract($param);    import("@.ORG.Page");    //总记录数    $flag = is_string($result);    $listvar = $listvar ? $listvar : 'list';    $listRows = $listRows? $listRows : 21;    if ($flag)     $totalRows = M()->table($result . ' a')->count();    else     $totalRows = ($result) ? count($result) : 1;    //创建分页对象    if ($target && $pagesId)     $p = new Page($totalRows, $listRows, $parameter, $url,$target, $pagesId);    else     $p = new Page($totalRows, $listRows, $parameter,$url);    //抽取数据    if ($flag) {     $result .= " LIMIT {$p->firstRow},{$p->listRows}";     $voList = M()->query($result);    } else {     $voList = array_slice($result, $p->firstRow, $p->listRows);    }    $pages = C('PAGE');//要ajax分页配置PAGE中必须theme带%ajax%,其他字符串替换统一在配置文件中设置,    //可以使用该方法前用C临时改变配置    foreach ($pages as $key => $value) {     $p->setConfig($key, $value); // 'theme'=>'%upPage% %linkPage% %downPage% %ajax%'; 要带 %ajax%    }    //分页显示    $page = $p->show();    //模板赋值    $this->assign($listvar, $voList);    $this->assign("page", $page);    if ($this->isAjax()) {//判断ajax请求     layout(false);     $template = (!$template) ? 'ajaxlist' : $template;     exit($this->fetch($template));    }    return $voList;   }  }  

 


本文由美洲杯波胆发布于计算机教程,转载请注明出处:thinkphp之ajax分页类

关键词: