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

PHP
WHOIS类的修改版
用php和MySql来与ODBC数据连接
用PHP和ACCESS写聊天室(四)
用PHP和ACCESS写聊天室(五)
PHP+javascript模拟Matrix画面
用PHP和ACCESS写聊天室(六)
PHP与javascript的两种交互方式
用php+mysql一个名片库程序
用session做客户验证时的注意事项
模仿OSO的论坛(一)
我的群发邮件程序
php上传、管理照片示例
PHP实现网上点歌(二)
在PHP3中实现SESSION的功能(二)
在PHP3中实现SESSION的功能(三)
我用php+mysql写的留言本
在PHP3中实现SESSION的功能(一)
模仿OSO的论坛(三)
针对初学PHP者的疑难问答(2)
oracle资料库函式库

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


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