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

PHP
PHP中for循环语句的几种“变态”用法
用PHP与XML联手进行网站开发
PHP程序漏洞产生的原因和防范方法
利用PHP编程防范XSS跨站脚本攻击
使用PHP往Windows系统中添加用户
PHP Shell的编写(改进版)
PHP开发中接收复选框信息的方法
PHP程序加速探索之服务器负载测试
PHP实现首页自动选择语言转跳
十天学会php之第一天
十天学会php之第二天
十天学会php之第三天
十天学会php之第四天
十天学会php之第五天
十天学会php之第六天
十天学会php之第七天
十天学会php之第八天
十天学会php之第九天
十天学会php之第十天
Web开发源代码:PHP生成静态页面的类

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


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