一个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 相关文章推荐
Email+URL的判断和自动转换函数
Oct 09 PHP
PHP中的string类型使用说明
Jul 27 PHP
将一维或多维的数组连接成一个字符串的php代码
Aug 08 PHP
php学习之运算符相关概念
Jun 09 PHP
PHP调用MsSQL Server 2012存储过程获取多结果集(包含output参数)的详解
Jul 03 PHP
分享PHP计算两个日期相差天数的代码
Dec 23 PHP
解析WordPress中的post_class与get_post_class函数
Jan 04 PHP
php实现用户注册密码的crypt加密
Jun 08 PHP
Laravel中日期时间处理包Carbon的简单使用
Sep 21 PHP
PHP生成指定范围内的N个不重复的随机数
Mar 18 PHP
YII2.0框架行为(Behavior)深入详解
Jul 26 PHP
laravel框架使用阿里云短信发送消息操作示例
Feb 15 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面向对象全攻略 (九)访问类型
2009/09/30 PHP
PHP面向对象程序设计之类常量用法实例
2014/08/20 PHP
PHP中file_get_contents高?用法实例
2014/09/24 PHP
PHP集成百度Ueditor 1.4.3
2014/11/23 PHP
JavaScript实现动态增加文件域表单
2009/02/12 Javascript
jQuery EasyUI API 中文文档 - Calendar日历使用
2011/10/19 Javascript
js获取url中指定参数值的示例代码
2013/12/14 Javascript
基于jquery实现的文字向上跑动类似跑马灯的效果
2014/06/17 Javascript
Python脚本后台运行的几种方式
2015/03/09 Javascript
原生js结合html5制作小飞龙的简易跳球
2015/03/30 Javascript
AngularJS基础教程之简单介绍
2015/09/27 Javascript
JS实现鼠标框选效果完整实例
2016/06/20 Javascript
详解微信小程序开发—你期待的分享功能来了,微信小程序序新增5大功能
2016/12/23 Javascript
JQuery.dataTables表格插件添加跳转到指定页
2017/06/09 jQuery
聊聊那些使用前端Javascript实现的机器学习类库
2017/09/18 Javascript
Three.js利用性能插件stats实现性能监听的方法
2017/09/25 Javascript
Vue.js简易安装和快速入门(第二课)
2017/10/17 Javascript
dts文件中删除一个node或属性的操作方法
2018/08/05 Javascript
vue动态设置img的src路径实例
2018/09/18 Javascript
js变量声明var使用与不使用的区别详解
2019/01/21 Javascript
基于JavaScript实现大文件上传后端代码实例
2020/08/18 Javascript
Python中类的定义、继承及使用对象实例详解
2015/04/30 Python
Python下的常用下载安装工具pip的安装方法
2015/11/13 Python
Python 专题三 字符串的基础知识
2017/03/19 Python
Python生成短uuid的方法实例详解
2018/05/29 Python
Python进阶之自定义对象实现切片功能
2019/01/07 Python
Python正则表达式匹配数字和小数的方法
2019/07/03 Python
python3获取控制台输入的数据的具体实例
2020/08/16 Python
Toppik顶丰增发纤维官网:解决头发稀疏
2017/12/30 全球购物
The North Face官方旗舰店:美国著名户外品牌
2020/09/28 全球购物
办公室内勤岗位职责范本
2013/12/09 职场文书
汽车维修工岗位职责
2014/02/12 职场文书
党员教师批评与自我批评发言稿
2014/10/15 职场文书
小学校园广播稿
2015/08/18 职场文书
golang 如何通过反射创建新对象
2021/04/28 Golang
Java服务调用RestTemplate与HttpClient的使用详解
2022/06/21 Java/Android