mysql_connect('localhost','root','');
mysql_select_db('news');
mysql_query('set names gbk');
$sql = mysql_query("select * from `v_char`");
$num = mysql_num_rows($sql);
include 'page.class.php';
/*参数说明:
*getpages($pagesize,$pagenum,$page,$init,$page_len);
*$pagesize 每页记录
*$pagenum 总记录数
*$page $_get[page]
*$init 数字分页最小数,默认为1,一般不用更改。
*$page_len 数字分页的数量。
*/
$model = new getpages(10,$num,$_get['page']);
$sql = "select * from `v_char` limit $model->offset,$model->pagesize";
$res = mysql_query($sql);
while($row = mysql_fetch_assoc($res))
{
echo $row['id'] . " - " . $row['name'] .' ';
}
//输出分页信息
echo $model->getpage();
?>
page.class.php
/*
* author:陈凯
* data:2010-09-14
*/
class getpages
{
public $pagesize; //每页记录
public $offset; //起始记录数
public $pagenum; //总记录
public $page; //当前页码
public $init; //数字分页最左边数字
public $page_len; //数字分页最右边数字
public $pages; //总页数
//初始化赋值。
function __construct($pagesize,$pagenum,$page,$init=1,$page_len=7)
{
$this->pagesize = $pagesize;//每页记录
$this->pagenum = $pagenum; //总记录
$this->page = $page;
$this->pages = ceil($this->pagenum/$this->pagesize); //总页数
if(empty($this->page) || $this->page page > $this->pages)$this->page=1;
$this->init = $init; //数字分页左
$this->page_len = $page_len;//数字分页右
$this->offset = ($this->page-1)*$this->pagesize;
}
//输出分页
function getpage()
{
$this->prepg = $this->page-1; //上一页
$this->nextpg= ($this->page == $this->pages) ? 0 : $this->page+1; //下一页
// if($this->pages == 1) return false; //如果只有一页跳出
$pagenav = "共 ".$this->pages."页".$this->pagenum."条";
if($this->page == 1)
{
$pagenav .="首页 ";
$pagenav .="上一页 ";
}
else
{
$pagenav .="首页 ";
$pagenav .="上一页 ";
}
$pagenav .= $this->getvalpage(); //数字分页
if($this->page == $this->pages)
{
$pagenav .="下一页 ";
$pagenav .="尾页 ";
}
else
{
$pagenav .="下一页 ";
$pagenav .="尾页 ";
}
|