PHP操作Access类

PHP操作Access类(PHP+ODBC+Access),Access数据库操作类。



<?php
//--------------------------------------------------------------------
//   使用范例:
//$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;           
    }
     }

?>
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值