一个PHP操作Access类(PHP+ODBC+Access)


Posted in PHP onJanuary 02, 2007
<?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;             
    } 
     } 
?>  
 
PHP 相关文章推荐
php下连接mssql2005的代码
Jan 17 PHP
phpcms模块开发之swfupload的使用介绍
Apr 28 PHP
分享php分页的功能模块
Jun 16 PHP
WordPress中给媒体文件添加分类和标签的PHP功能实现
Dec 31 PHP
php bootstrap实现简单登录
Mar 08 PHP
Fleaphp常见函数功能与用法示例
Nov 15 PHP
PHP+Ajax实现的博客文章添加类别功能示例
Mar 29 PHP
PHP写API输出的时用echo的原因详解
Apr 28 PHP
PHP设计模式(七)组合模式Composite实例详解【结构型】
May 02 PHP
浅谈PHP中的那些魔术常量
Dec 02 PHP
PHP引擎php.ini参数优化深入讲解
Mar 24 PHP
php将xml转化对象的实例详解
Nov 17 PHP
一个用php实现的获取URL信息的类
Jan 02 #PHP
PHP 和 MySQL 开发的 8 个技巧
Jan 02 #PHP
Smarty结合Ajax实现无刷新留言本实例
Jan 02 #PHP
Ajax PHP分页演示
Jan 02 #PHP
windows下PHP APACHE MYSQ完整配置
Jan 02 #PHP
PHP Ajax实现页面无刷新发表评论
Jan 02 #PHP
PHP+AJAX实现无刷新注册(带用户名实时检测)
Jan 02 #PHP
You might like
PHP 一个比较完善的简单文件上传
2010/03/25 PHP
php导入excel文件到mysql数据库的方法
2015/01/14 PHP
Zend Framework框架教程之Zend_Db_Table_Rowset用法实例分析
2016/03/21 PHP
基于PHP实现栈数据结构和括号匹配算法示例
2017/08/10 PHP
php面试中关于面向对象的相关问题
2019/02/13 PHP
laravel 解决多库下的DB::transaction()事务失效问题
2019/10/21 PHP
javascript firefox兼容ie的dom方法脚本
2008/05/18 Javascript
js获取视频时长代码
2014/04/10 Javascript
Jquery实现简单的轮播效果(代码管用)
2016/03/14 Javascript
详解jQuery中的deferred对象的使用(一)
2016/05/27 Javascript
jQuery实现的跨容器无缝拖动效果代码
2016/06/21 Javascript
js跨域资源共享 基础篇
2016/07/02 Javascript
jquery Ajax 全局调用封装实例详解
2017/01/16 Javascript
微信小程序 功能函数小结(手机号验证*、密码验证*、获取验证码*)
2017/12/08 Javascript
Vue 菜单栏点击切换单个class(高亮)的方法
2018/08/22 Javascript
Vue slot用法(小结)
2018/10/22 Javascript
vue-cli4.x创建企业级项目的方法步骤
2020/06/18 Javascript
[01:47]2018年度DOTA2最佳教练-完美盛典
2018/12/16 DOTA
Python读取键盘输入的2种方法
2015/06/16 Python
Python实现基本数据结构中队列的操作方法示例
2017/12/04 Python
Python Web程序部署到Ubuntu服务器上的方法
2018/02/22 Python
Django实现登录随机验证码的示例代码
2018/06/20 Python
python读取txt文件中特定位置字符的方法
2018/12/24 Python
在pycharm下设置自己的个性模版方法
2019/07/15 Python
python爬虫 爬取超清壁纸代码实例
2019/08/16 Python
基于梯度爆炸的解决方法:clip gradient
2020/02/04 Python
Python通过递归函数输出嵌套列表元素
2020/10/15 Python
详解pycharm自动import所需的库的操作方法
2020/11/30 Python
KEEN美国官网:美国人气户外休闲鞋品牌
2021/03/09 全球购物
银行实习人员自我鉴定
2013/09/22 职场文书
幼儿园教师工作制度
2014/01/22 职场文书
个人简历中的自我评价怎么写
2014/01/26 职场文书
党代会心得体会
2014/09/04 职场文书
公司辞职信模板
2015/05/13 职场文书
长江七号观后感
2015/06/11 职场文书
MSSQL基本语法操作
2022/04/11 SQL Server