网学网为需要PHP的朋友们搜集整理了php 解决旧系统 查出所有数据分页的类相关资料,希望对各位网友有所帮助!
添加了几个自定义的 从mysql result 集合中 抽取指定片段的方法 , 没有调用释放的原因 这个涉及到
程序的 原来校验
也多亏网上大神的帮助啊 。。。。 老系统害死人啊, 后台都不能动
复制代码 代码如下:
<?php
/* 分页类
* @author xiaojiong & 290747680@qq.com
* @date 2011-08-17
*
* show(2) 1 ... 62 63 64 65 66 67 68 ... 150
* 分页样式
* #page{font:12px/16px arial}
* #page span{float:left;margin:0px 3px;}
* #page a{float:left;margin:0 3px;border:1px solid #ddd;padding:3px 7px; text-decoration:none;color:#666}
* #page a.now_page,#page a:hover{color:#fff;background:#05c}
*/
class Core_Lib_Page
{
public $first_row; //起始行数
public $list_rows; //列表每页显示行数
protected $total_pages; //总页数
protected $total_rows; //总行数
protected $now_page; //当前页数
protected $method = ''defalut''; //处理情况 Ajax分页 Html分页(静态化时) 普通get方式
protected $parameter = '''';
protected $page_name; //分页参数的名称
protected $ajax_func_name;
public $plus = 3; //分页偏移量
protected $url;
public function get_page_result()
{
$lastResult = array();
$skipCount = $this->get_skip_row_count();
if(mysql_num_rows($result)>0)
{
mysql_data_seek($result,$skipCount);
}
$pageSize = $this->$list_rows;
while($row = mysql_fetch_array($result))
{
$pageSize --;
$lastResult[] = $row;
if($pageSize == 0)
{
break ;
}
}
return $lastResult;
}
public function get_skip_row_count()
{
return $this->list_rows*($this->now_page-1);
}
/**
* 构造函数
* @param unknown_type $data
*/
public function __construct($data = array())
{
$this->total_rows = $data[''total_rows''];
$this->parameter = !empty($data[''parameter'']) ? $data[''parameter''] : '''';
$this->list_rows = !empty($data[''list_rows'']) && $data[''list_rows''] <= 100 ? $data[''list_rows''] : 15;
$this->total_pages = ceil($this->total_rows / $this->list_rows);
$this->page_name = !empty($data[''page_name'']) ? $data[''page_name''] : ''p'';
$this->ajax_func_name = !empty($data[''ajax_func_name'']) ? $data[''ajax_func_name''] : '''';
$this->method = !empty($data[''method'']) ? $data[''method''] : '''';
/* 当前页面 */
if(!empty($data[''now_page'']))
{
$this->now_page = intval($data[''now_page'']);
}else{
$this->now_page = !empty(
php 解决旧系统 查出所有数据分页的类_网学
浏览:
GET[$this->page_name]) ? intval(
php 解决旧系统 查出所有数据分页的类_网学
浏览:
GET[$this->page_name]):1;
}
$this->now_page = $this->now_page <= 0 ? 1 : $this->now_page;
if(!empty($this->total_pages) && $this->now_page > $this->total_pages)
{
$this->now_page = $this->total_pages;
}
$this->first_row = $this->list_rows * ($this->now_page - 1);
}
/**
* 得到当前连接
* @param $page
* @param $text
* @return string
*/
protected function _get_link($page,$text)
{
switch ($this->method) {
case ''ajax'':
$parameter = '''';
if($this->parameter)
{
$parameter = '',''.$this->parameter;
}
return ''<a onclick="'' . $this->ajax_func_name . ''(\'''' . $page . ''\''''.$parameter.'')" href="javascript:void(0)">'' . $text . ''</a>'' . "\n";
break;
case ''html'':
$url = str_