php odbc 数据库操作类

<?php
//--------------------------------------------------------------------
//FileName:class.php
//Summary: Access数据库操作类
//CreateTime: 2006-8-10     
//LastModifed:
//copyright (c)2006 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;            
    }
     }
?>
转自:
http://www.phpx.com/happy/thread-146866-1-1.html
原文地址:https://www.cnblogs.com/fengju/p/6173941.html