php的access操作类

yipeiwu_com6年前PHP代码库
复制代码 代码如下:

<?php    
--------------------------------------------------------------------    
//FileName:class.php    
//Summary: Access数据库操作类    
//Author:  forest    
//CreateTime: 2006-8-10         
//LastModifed:    
//copyright (c)2006     
//http://freeweb.nyist.net/~chairy      
//[email]chaizuxue@163.com[/email]    
//   使用范例:    
//$databasepath="database.mdb";    
//$dbusername="";    
//$dbpassword="";    
//include_once("class.php");    
//$access=new Access($databasepath,$dbusername,$dbpassword);    

--------------------------------------------------------------------    
    class Access    
    {    
         var $databasepath,$constr,$dbusername,$dbpassword,$link;    
         function Access($databasepath,$dbusername,$dbpassword)    
         {    
               $this->databasepath=$databasepath;    
        $this->username=$dbusername;    
        $this->password=$dbpassword;    
        $this->connect();    
          }    

    function connect()    
    {    
        $this->constr="DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" . realpath($this->databasepath);     
        $this->link=odbc_connect($this->constr,$this->username,$this->password,SQL_CUR_USE_ODBC);    
        return $this->link;    
        //if($this->link) echo "恭喜你,数据库连接成功!";    
        //else echo "数据库连接失败!";    
    }    

    function query($sql)    
    {    
        return @odbc_exec($this->link,$sql);    
    }    

    function first_array($sql)    
    {    
        return odbc_fetch_array($this->query($sql));    
    }    

    function fetch_row($query)    
    {    
        return odbc_fetch_row($query);    
    }    

    function total_num($sql)//取得记录总数    
    {    
        return odbc_num_rows($this->query($sql));    
    }    

    function close()//关闭数据库连接函数    
    {        
        odbc_close($this->link);    
    }    

    function insert($table,$field)//插入记录函数    
    {    
        $temp=explode(',',$field);    
        $ins='';    
        for ($i=0;$i<count($temp);$i++)    
        {    
            $ins.="'".$_POST[$temp[$i]]."',";    
        }    
        $ins=substr($ins,0,-1);    
        $sql="INSERT INTO ".$table." (".$field.") VALUES (".$ins.")";    
        $this->query($sql);    
    }    

    function getinfo($table,$field,$id,$colnum)//取得当条记录详细信息    
    {    
        $sql="SELECT * FROM ".$table." WHERE ".$field."=".$id."";    
        $query=$this->query($sql);    
        if($this->fetch_row($query))    
        {    
            for ($i=1;$i<$colnum;$i++)    
            {    
          $info[$i]=odbc_result($query,$i);    
             }    
         }    
         return $info;    
    }    

    function getlist($table,$field,$colnum,$condition,$sort="ORDER BY id DESC")//取得记录列表        
    {    
         $sql="SELECT * FROM ".$table." ".$condition." ".$sort;    
         $query=$this->query($sql);    
         $i=0;    
         while ($this->fetch_row($query))     
         {    
        $recordlist[$i]=getinfo($table,$field,odbc_result($query,1),$colnum);    
        $i++;    
          }    
          return $recordlist;    
    }    

    function getfieldlist($table,$field,$fieldnum,$condition="",$sort="")//取得记录列表    
    {    
         $sql="SELECT ".$field." FROM ".$table." ".$condition." ".$sort;    
         $query=$this->query($sql);    
         $i=0;    
         while ($this->fetch_row($query))     
         {    
         for ($j=0;$j<$fieldnum;$j++)    
        {    
                   $info[$j]=odbc_result($query,$j+1);    
        }        
        $rdlist[$i]=$info;    
        $i++;    
         }    
         return $rdlist;    
    }    

    function updateinfo($table,$field,$id,$set)//更新记录    
    {    
        $sql="UPDATE ".$table." SET ".$set." WHERE ".$field."=".$id;    
        $this->query($sql);    
    }    

    function deleteinfo($table,$field,$id)//删除记录    
    {    
         $sql="DELETE FROM ".$table." WHERE ".$field."=".$id;    
         $this->query($sql);    
    }    

    function deleterecord($table,$condition)//删除指定条件的记录    
    {    
         $sql="DELETE FROM ".$table." WHERE ".$condition;    
         $this->query($sql);    
    }    

    function getcondrecord($table,$condition="")// 取得指定条件的记录数    
    {    
         $sql="SELECT COUNT(*) AS num FROM ".$table." ".$condition;    
         $query=$this->query($sql);    
         $this->fetch_row($query);    
         $num=odbc_result($query,1);    
         return $num;                
    }    
     }    
?> 

相关文章

php实现的顺序线性表示例

本文实例讲述了php实现的顺序线性表。分享给大家供大家参考,具体如下: <?php /* * 线性顺序表 ,其是按照顺序在内存进行存储,出起始和结尾以外都是一一连接的...

php mssql 数据库分页SQL语句

我们在编写MIS系统和Web应用程序等系统时,都涉及到与数据库的交互,如果数据库中数据量很大的话,一次检索所有的记录,会占用系统很大的资源,因此我们常常采用,需要多少数据就只从数据库中取...

PHP实现根据设备类型自动跳转相应页面的方法

随着当今移动设备的普及,上网已经比过去更加方便。针对Android智能手机,iPhone/iPad等移动终端,很多网站都相继推出了针对电脑和这类手机等移动设备访问的网页。本文所述的实例代...

PHP随机数 C扩展随机数

PHP随机数 C扩展随机数

由于要用到固定长度的随机字符串。 首先是一段PHP代码 $str_md5=md5(uniqid()); $rand = mt_rand(1, 28); $str1=substr(...

PHP函数实现从一个文本字符串中提取关键字的方法

本文实例讲述了PHP函数实现从一个文本字符串中提取关键字的方法。分享给大家供大家参考。具体分析如下: 这是一个函数定位接收一个字符串作为参数(连同其他配置可选参数),并且定位该字符串中的...