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

PHP
成为PHP编程高手应该遵循的三个准则
PHP企业级应用之常见缓存技术篇
PHP企业级应用之WebService篇
PHP实现的Mysql读写分离
php框架codeigniter是如何实现mvc模式以及单一入口
PHP版单点登陆实现方案
Linux编程之:五个常见PHP数据库问题
linux下php实现C/C++扩展编程
目前最好的PHP开发框架
php职业分析(如何成为一名优秀的phper)
PHP 的八卦两则
20款 Web Mail PHP开源项目
经验分享:学好java开发的关键7步
PHP中正则的使用
对于Java开发人员必须遵从的十大基本法则
PHP绘制3D图形之自定义图形及矢量图
PHP编写的25个游戏脚本
php生成静态页面的办法
微软对PHP支持的改进 及其它一些胡言乱语
Fedora下Zend Studio 6.1.2 的配置

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 175 ::
收藏到网摘: 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;           
        }
    }
?>