24 PHP操作Access类

本文介绍了一个用于Access数据库操作的PHP类库,提供了连接数据库、执行查询、获取记录等多种功能,并展示了如何使用该类库进行数据库操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

<?php

--------------------------------------------------------------------

//FileName:class.php

//Summary: Access数据库操作类

//Author:  forest

//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;            

    }

     }

?> 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值