![]() |
|
首页 │ Apache │ Linux│ Java│ MySQL│ 注册│帮助 | |||
好久不编码了,捡点古董的东西来玩,发现网上没有关于adodb翻页的教程,即便是有的也就是几句带过,很笼统,自己写了段程序,加了点注释,希望对各位有用
[PHP]
<?php
include_once('./adodb/adodb.inc.php');
include_once('./adodb/adodb-pager.inc.php');
//初始化DB类和翻页类
$db = NewADOConnection('mysql');
$db->Connect('localhost','root','','myferly');
$pager = new ADODB_Pager($db, $sql, "myferly");
//设置显示的列表数和操作的SQL语句
$num_of_rows_per_page = 10;
$sql = 'select * from message_info';
//将参数传递至翻页类
$pager->rows = $num_of_rows_per_page;
if ($db->pageExecuteCountRows){
$ADODB_COUNTRECS = true;
}
//发生翻页动作时和默认第一页显示的数据调用不同的函数
if ($pager->cache){
$pager->rs = $db->CachePageExecute($pager->cache,$sql,$num_of_rows_per_page,$pager->curr_page);
}else{
$pager->rs = $db->PageExecute($sql,$num_of_rows_per_page,$pager->curr_page);
}
$ADODB_COUNTRECS = $savec;
//计算分页
print $pager->rs->AtFirstPage();
print $pager->rs->AtLastPage();
//可以设定列表风格
$pager->first = "|[首页]";
$pager->prev = "[上页]";
$pager->next = "[下页]";
$pager->last = "[尾页]|";
$pager->page = "当前:";
//输出分页
print $pager->RenderNav();
//输出页数
print $pager->RenderPageCount()."
";
/*
也可以用这种方法输出
print "当前" . $pager->curr_page . "页/共" . $pager->rs->LastPageNo(). "页";
*/
//输出列表信息
while (!$pager->rs->EOF){
print $pager->rs->fields[0]."
";
$pager->rs->MoveNext();
}
?>
[/PHP]
上面是我翻adodb源码整理的,没有往深了看,试了一下,如果不用adodb的模板处理程序,操作数据库还是很快的,起码我可以接受,代码写的很清晰,大家可以将adodb作为教程来看

