若相依 发表于 2015-2-4 00:07:25

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:55

在学习的过程中不能怕麻烦,不能有懒惰的思想。学习php首先应该搭建一个lamp环境或者是wamp环境。这是学习php开发的根本。虽然网络上有很多集成的环境,安装很方便,使用起来也很稳定、

乐观 发表于 2015-2-7 19:23:02

写的比较杂,因为我也是个新手,不当至于大家多多指正。

透明 发表于 2015-2-23 02:59:36

开发工具也会慢慢的更专业,每个公司的可能不一样,但是zend studio是个大伙都会用的。

金色的骷髅 发表于 2015-3-7 05:34:37

我学习了一段时间后,我发现效果并不好(估计是我自身的问题)。因为一个人的精力总是有限的,同时学习这么多,会导致每个的学习时间都得不到保证。

冷月葬花魂 发表于 2015-3-8 10:32:34

使用zendstdio 写代码的的时候,把tab 的缩进设置成4个空格是很有必要的

小女巫 发表于 2015-3-15 21:20:36

首先我是坚决反对新手上来就用框架的,因为对底层的东西一点都不了解,造成知识上的真空,会对以后的发展不利。我的观点上手了解下框架就好,代码还是手写。当然啦如果是位别的编程语言的高手的话,这个就另当别论啦。

爱飞 发表于 2015-3-22 04:54:01

个人呢觉得,配wamp 最容易漏的一步就是忘了把$PHP$目录下的libmysql.dll拷贝到windows系统目录的system32目录下,还有重启apache。

因胸联盟 发表于 2015-3-25 02:33:40

学习php的目的往往是为了开发动态网站,phper就业的要求也涵盖了很多。我大致总结为:精通php和mysql

第二个灵魂 发表于 2015-4-7 07:52:41

首推的搜索引擎当然是Google大神,其次我比较喜欢 百度知道。不过搜出来的结果往往都是 大家copy来copy去的,运气的的概率很大。

分手快乐 发表于 2015-4-26 17:07:54

对于懒惰的朋友,我推荐php的集成环境xampp或者是wamp。这两个软件安装方便,使用简单。但是我还是强烈建议自己动手搭建开发环境。

愤怒的大鸟 发表于 2015-5-6 12:22:24

曾经犯过一个很低级的错误,我在文件命名的时候用了一个横线\\\\\\\'-\\\\\\\' 号,结果找了好几个小时的错误,事实是命名的时候 是不能用横线 \\\\\\\'-\\\\\\\' 的,应该用的是下划线\\\\\\\'_\\\\\\\' ;

莫相离 发表于 2015-6-9 01:38:15

有位前辈曾经跟我说过,phper 至少要掌握200个函数 编起程序来才能顺畅点,那些不熟悉的函数记不住也要一拿手册就能找到。所以建议新手们没事就看看php的手册(至少array函数和string函数是要记牢的)。

再现理想 发表于 2015-6-12 22:26:47

其实没啥难的,多练习,练习写程序,真正的实践比看100遍都有用。不过要熟悉引擎

飘飘悠悠 发表于 2015-6-26 20:18:10

我要在声明一下:我是个菜鸟!!我对php这门优秀的语言也是知之甚少。但是我要在这里说一下php在网站开发中最常用的几个功能:

柔情似水 发表于 2015-6-30 15:33:43

使用zendstdio 写代码的的时候,把tab 的缩进设置成4个空格是很有必要的

不帅 发表于 2015-7-2 09:46:37

个人呢觉得,配wamp 最容易漏的一步就是忘了把$PHP$目录下的libmysql.dll拷贝到windows系统目录的system32目录下,还有重启apache。

飘灵儿 发表于 2015-7-12 10:10:27

php里的数组为空的时候是不能拿来遍历的;(这个有点低级啊,不过我刚被这个边界问题墨迹了好长一会)

精灵巫婆 发表于 2015-7-14 06:09:51

作为一个合格的coder 编码的规范是必须,命名方面我推崇“驼峰法”,另外就是自己写的代码最好要带注释,不然时间长了,就算是自己的代码估计看起来都费事,更不用说别人拉。

admin 发表于 2015-7-18 00:16:12

实践是检验自己会不会的真理。
页: [1]
查看完整版本: PHP网页设计一个odbc连mssql分页的类