仓酷云

标题: PHP网页设计一个odbc连mssql分页的类 [打印本页]

作者: 若相依    时间: 2015-2-4 00:07
标题: PHP网页设计一个odbc连mssql分页的类
工具程序用来显示 Rasmus Lerdorf 的个人履历,以及统计网页流量。   <!--二泉.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> 首页 </a><a 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){//定制动静
        echo"<center>$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();
?>

因为函数实在是太多了,慢慢的你就会知道,知道有这个函数就可以。
作者: 若相依    时间: 2015-2-4 08:57
在学习的过程中不能怕麻烦,不能有懒惰的思想。学习php首先应该搭建一个lamp环境或者是wamp环境。这是学习php开发的根本。虽然网络上有很多集成的环境,安装很方便,使用起来也很稳定、
作者: 乐观    时间: 2015-2-7 19:23
写的比较杂,因为我也是个新手,不当至于大家多多指正。
作者: 透明    时间: 2015-2-23 02:59
开发工具也会慢慢的更专业,每个公司的可能不一样,但是zend studio是个大伙都会用的。
作者: 金色的骷髅    时间: 2015-3-7 05:34
我学习了一段时间后,我发现效果并不好(估计是我自身的问题)。因为一个人的精力总是有限的,同时学习这么多,会导致每个的学习时间都得不到保证。
作者: 冷月葬花魂    时间: 2015-3-8 10:32
使用zendstdio 写代码的的时候,把tab 的缩进设置成4个空格是很有必要的
作者: 小女巫    时间: 2015-3-15 21:20
首先我是坚决反对新手上来就用框架的,因为对底层的东西一点都不了解,造成知识上的真空,会对以后的发展不利。我的观点上手了解下框架就好,代码还是手写。当然啦如果是位别的编程语言的高手的话,这个就另当别论啦。
作者: 爱飞    时间: 2015-3-22 04:54
个人呢觉得,配wamp 最容易漏的一步就是忘了把$PHP$目录下的libmysql.dll拷贝到windows系统目录的system32目录下,还有重启apache。
作者: 因胸联盟    时间: 2015-3-25 02:33
学习php的目的往往是为了开发动态网站,phper就业的要求也涵盖了很多。我大致总结为:精通php和mysql
作者: 第二个灵魂    时间: 2015-4-7 07:52
首推的搜索引擎当然是Google大神,其次我比较喜欢 百度知道。不过搜出来的结果往往都是 大家copy来copy去的,运气的的概率很大。
作者: 分手快乐    时间: 2015-4-26 17:07
对于懒惰的朋友,我推荐php的集成环境xampp或者是wamp。这两个软件安装方便,使用简单。但是我还是强烈建议自己动手搭建开发环境。
作者: 愤怒的大鸟    时间: 2015-5-6 12:22
曾经犯过一个很低级的错误,我在文件命名的时候用了一个横线\\\\\\\'-\\\\\\\' 号,结果找了好几个小时的错误,事实是命名的时候 是不能用横线 \\\\\\\'-\\\\\\\' 的,应该用的是下划线  \\\\\\\'_\\\\\\\' ;
作者: 莫相离    时间: 2015-6-9 01:38
有位前辈曾经跟我说过,phper 至少要掌握200个函数 编起程序来才能顺畅点,那些不熟悉的函数记不住也要一拿手册就能找到。所以建议新手们没事就看看php的手册(至少array函数和string函数是要记牢的)。
作者: 再现理想    时间: 2015-6-12 22:26
其实没啥难的,多练习,练习写程序,真正的实践比看100遍都有用。不过要熟悉引擎
作者: 飘飘悠悠    时间: 2015-6-26 20:18
我要在声明一下:我是个菜鸟!!我对php这门优秀的语言也是知之甚少。但是我要在这里说一下php在网站开发中最常用的几个功能:
作者: 柔情似水    时间: 2015-6-30 15:33
使用zendstdio 写代码的的时候,把tab 的缩进设置成4个空格是很有必要的
作者: 不帅    时间: 2015-7-2 09:46
个人呢觉得,配wamp 最容易漏的一步就是忘了把$PHP$目录下的libmysql.dll拷贝到windows系统目录的system32目录下,还有重启apache。
作者: 飘灵儿    时间: 2015-7-12 10:10
php里的数组为空的时候是不能拿来遍历的;(这个有点低级啊,不过我刚被这个边界问题墨迹了好长一会)
作者: 精灵巫婆    时间: 2015-7-14 06:09
作为一个合格的coder 编码的规范是必须,命名方面我推崇“驼峰法”,另外就是自己写的代码最好要带注释,不然时间长了,就算是自己的代码估计看起来都费事,更不用说别人拉。
作者: admin    时间: 2015-7-18 00:16
实践是检验自己会不会的真理。




欢迎光临 仓酷云 (http://ckuyun.com/) Powered by Discuz! X3.2