Example #1
0
 /**
  * 生成分页面板代码
  * @param $param 需要传递的变量数组  格式 array("class"=>"投诉","sname"=>"姓名")
  * 也可以是全局变量的数组,如$_POST,$_GET
  * @param $type 分页选择/跳转类型
  * @param $tpl
  * @return string
  */
 public static function generateBarCode($param = array(), $type = 0, $tpl = '')
 {
     self::parseQs();
     //处理url参数
     //默认值
     if ($type == 0) {
         $type = self::PAGINATE_BY_PAGECODE;
     }
     // 显示页面分页,不需要
     if ($type & self::PAGINATE_BY_PAGECODE) {
         $isForm = false;
     } else {
         $isForm = true;
     }
     $qs = http_build_query($param);
     if (!empty($param) && !empty($_POST) && strlen($qs) > 1000) {
         self::$formMethod = $method = 'POST';
     } else {
         $method = 'GET';
         $param = array_merge($_GET, $param);
     }
     $panelStr = '<div id="' . self::$pagePanel . '" style="width:99%;"' . ' class="' . self::$pagePanelClass . '">' . "\n";
     if ($isForm) {
         $panelStr .= '<form id="' . self::$pageFormId . '" name="" method="' . $method . '" ' . 'action="' . self::$firstUrl . '">' . "\n";
     }
     //假如有附加变量,则添加相关的隐藏域来保存变量值
     if ($isForm && is_array($param)) {
         $param_str = ' ';
         foreach ($param as $key => $value) {
             $except_param = array(self::$pageVar, 'submit');
             //只显示值不为空的隐藏域
             if ($value != '' && !in_array($key, $except_param)) {
                 $panelStr .= '<input type="hidden" ' . 'name="' . $key . '" value="' . $value . '">' . "\n";
             }
         }
     }
     if (self::$showRowsDetail && self::$rows > 0) {
         $panelStr .= '共有记录:' . self::$rows . ' 条&nbsp;&nbsp;';
         if (self::$from + 1 == self::$to) {
             $show = '显示第 ' . self::$to . ' 条';
         } else {
             $show = '显示:' . (self::$from + 1) . '-' . self::$to . ' 条';
         }
         $panelStr .= $show . '&nbsp;&nbsp;当前页: <font color="#ff0000">' . self::$page . '</font>/' . self::$total;
     } else {
         $panelStr .= '';
     }
     //没有记录则退出
     if (self::$rows <= 0) {
         $panelStr .= "\n</form>\n</div>\n";
         return $panelStr;
     }
     /*页码翻页 START*/
     if (self::$rows > 0 && $type & self::PAGINATE_BY_NAVPAGE) {
         //顺序编码
         $panelStr .= self::getNavPageTurn();
     }
     if (self::$rows > 0 && $type & self::PAGINATE_BY_SELECT) {
         //下拉框翻页码
         $panelStr .= self::getSelectPageTurn();
     }
     if (self::$rows > 0 && $type & self::PAGINATE_BY_INPUT) {
         //输入框翻页
         $panelStr .= self::getInputPageTurn();
     }
     if (self::$rows > 0 && $type & self::PAGINATE_BY_PAGECODE) {
         //页码列表翻页
         $panelStr .= self::getPageCodeTurn();
     }
     /*页码翻页 START*/
     if ($isForm) {
         $panelStr .= "\n</form>\n</div>\n";
     } else {
         $panelStr .= "\n</div>\n";
     }
     return $panelStr;
 }