一个odbc连mssql分页的类_php基础_脚本之家

!–二泉.net –?class Pages{var $cn;//连接数据库游标var
$d;//连接数据表的游标var $result;//结果var $dsn;//dsn源var
$user;//用户名var $pass;//密码var $total;//记录总数var
$pages;//总页数var $onepage;//每页条数var $page;//当前页var $fre;//var
$net;//var $i;//控制每页显示function
getConnect($dsn,$user,$pass){$this-cn=@odbc_connect($dsn,$user,$pass);if(!$this-cn){$error=连接数据库出错;$this-getMess($error);}
}function
getDo($sql){//从表中查询数据$this-d=@odbc_do($this-cn,$sql);if(!$this-d){$error=查询时发生了小错误……;$this-getMess($error);}return
$this-d;}function
getTotal($sql){$this-sql=$sql;$dT=$this-getDo($this-sql);//求总数的游标$this-total=odbc_result($dT,’total’);//这里为何不能$this-d呢?return
$this-total; }function
getList($sql,$onepage,$page){$this-s=$sql;$this-onepage=$onepage;$this-page=$page;$this-dList=$this-getDo($this-s);//连接表的游标$this-pages=ceil($this-total/$this-onepage);if($this-pages==0)
$this-pages++; //不能取到第0页if(!isset($this-page))
$this-page=1;$this-fre = $this-page-1;//将显示的页数$this-nxt =
$this-page+1; $this-nums=($this-page-1)*$this-onepage;
//if($this-nums!=0){//for($this-i=0;$this-i$pg-getNums();odbc_fetch_row($this-dd),$this-i++);//同上//}//$this-i=0;//为何这部分不能封装?return
$this-dList; }function getFanye(){$str=;if($this-page!=1)$str.=a
href=.$PHP_SELF.?page=1 首页 /aa href=.$PHP_SELF.?page=.$this-fre.
前页 /a;else$str.=font color=999999首页
前页/font;if($this-page$this-pages)$str.=a
href=.$PHP_SELF.?page=.$this-nxt. 后页 /a;else$str.=font color=999999
后页 /font;if($this-page!=$this-pages)$str.=a
href=.$PHP_SELF.?page=.$this-pages. 尾页 /a;else$str.=font color=999999
尾页 /font;$str.=共.$this-pages.页;$str.=您正浏览第font
color=red.$this-page./font页;return $str;}function getNums(){return
$this-nums;}function getOnepage(){//每页实际条数return
$this-onepage;}function getI(){return $this-i;}function getPage(){return
$this-page;}function
getMess($error){//定制消息echocenter$error/center;exit;}}$pg=new
Pages();$pg-getConnect(lei,sa,star);$pg-getTotal(select count(*) as
total from xs);//连学生表求总数$pg-getList(select xs_name from xs order
by xs_id,8,$page);
if($pg-getNums()!=0){for($i=0;$i$pg-getNums();odbc_fetch_row($pg-dList),$i++);//同上}$i=0;while(odbc_fetch_row($pg-dList)){$name=odbc_result($pg-dList,xs_name);echo
$name.br;if($i==$pg-getOnepage()){//跳出循环break;}$i++;}echo$pg-getFanye();?

cn=@odbc_澳门新葡亰3522平台游戏,connect;if{$error=”连接数据库出错”;$this->getMess;}
}function
getDo{//从表中查询数据$this->d=@odbc_do;if{$error=”查询时发生了小错误……”;$this->getMess;}return
$this->d;}function
getTotal{$this->sql=$sql;$dT=$this->getDo;//求总数的游标$this->total=odbc_result;//这里为何不能$this->d呢?return
$this->total; }function
getList{$this->s=$sql;$this->onepage=$onepage;$this->page=$page;$this->dList=$this->getDo;//连接表的游标$this->pages=ceil($this->total/$this->onepage);if
$this->pages++; //不能取到第0页if $this->page=1;$this->fre =
$this->page-1;//将显示的页数$this->nxt = $this->page+1;
$this->nums=*$this->onepage;
//if{//for($this->i=0;$this->igetNums();odbc_fetch_row,$this->i++);//同上//}//$this->i=0;//为何这部分不能封装?return
$this->dList; }function
getFanye(){$str=””;if$str.=”首页fre.”>
前页”;else$str.=”首页
前页”;if($this->pagepages)$str.=”nxt.”>
后页”;else$str.=”
后页 “;if($this->page!=$this->pages)$str.=”pages.”>
尾页”;else$str.=”
尾页
“;$str.=”共”.$this->pages.”页”;$str.=”您正浏览第”.$this->page.”页”;return
$str;}function getNums(){return $this->nums;}function
getOnepage(){//每页实际条数return $this->onepage;}function
getI(){return $this->i;}function getPage(){return
$this->page;}function getMess{//定制消息echo”$error”;exit;}}$pg=new
Pages();$pg->getConnect(“lei”,”sa”,”star”);$pg->getTotal as total
from xs”);//连学生表求总数$pg->getList(“select xs_name from xs order
by xs_id”,8,$page);
if{for($i=0;$igetNums();odbc_fetch_row;//同上}$i=0;while(odbc_fetch_row{$name=odbc_result($pg->dList,”xs_name”);echo
$name.”
“;if){//跳出循环break;}$i++;}echo$pg->getFanye();?>