当前位置: 首页 > 图文教程 > 网络编程 > PHP > php操作access数据库类代码

PHP
数据库相关问题
Oracle Faq(Oracle的版本)
[FAQ]PHP中的一些常识:类篇
第1次亲密接触PHP5(2)
ftp类(myftp.php)
PHP出错界面
对盗链说再见...
example2.php
3
PHP与javascript对多项选择的处理
用PHP创建PDF中文文档
用Socket发送电子邮件(利用需要验证的SMTP服务器)
PHP:风雨欲来 路在何方?
PHP的面向对象编程
提升PHP执行速度全攻略(下)
PHP中在数据库中保存Checkbox数据(2)
用在PHP里的JS打印函数
在线竞拍系统的PHP实现框架(一)
分页显示Oracle数据库记录的类之一
分页显示Oracle数据库记录的类之二

PHP 中的 php操作access数据库类代码


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 114 ::
收藏到网摘: n/a

以下为引用的内容:
<?php
    class Access//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)//从access数据库中返回一个数组
        {
            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;           
        }
    }
?>